diff --git a/CMakeLists.txt b/CMakeLists.txt index 6c50b6e..4d0071d 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -6,6 +6,7 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -pthread -pedantic") set(BUILD_SHARED_LIBS OFF) set(BUILD_TESTS ON) set(BUILD_SAMPLES ON) +set(LIB_NAME vb01) set(CMAKE_POSITION_INDEPENDENT_CODE ON) cmake_policy(SET CMP0015 NEW) @@ -24,7 +25,7 @@ include_directories(external/glm/glm) include_directories(external/glad) include_directories(external/stb) -add_library(vb01 SHARED external/glad/glad.c ${LIB_SRC}) +add_library(${LIB_NAME} SHARED external/glad/glad.c ${LIB_SRC}) set(GLFW_DIR external/glfw) set(FREETYPE_DIR external/freetype) @@ -39,22 +40,22 @@ endif() add_subdirectory(${GLFW_DIR}) set(GLFW_LIB_DIR build/${GLFW_DIR}/src) -target_include_directories(${PROJECT_NAME} PUBLIC ${GLFW_DIR}/include/GLFW) -target_link_directories(${PROJECT_NAME} PUBLIC ${GLFW_LIB_DIR}) +target_include_directories(${LIB_NAME} PUBLIC ${GLFW_DIR}/include/GLFW) +target_link_directories(${LIB_NAME} PUBLIC ${GLFW_LIB_DIR}) add_subdirectory(${ASSIMP_DIR}) set(ASSIMP_LIB_DIR build/${ASSIMP_DIR}/lib) -target_include_directories(${PROJECT_NAME} PUBLIC ${ASSIMP_DIR}/include/assimp) -target_link_directories(${PROJECT_NAME} PUBLIC ${ASSIMP_LIB_DIR}) +target_include_directories(${LIB_NAME} PUBLIC ${ASSIMP_DIR}/include/assimp) +target_link_directories(${LIB_NAME} PUBLIC ${ASSIMP_LIB_DIR}) set(FREETYPE_LIB_DIR build/${FREETYPE_DIR}) add_subdirectory(${FREETYPE_DIR}) -target_include_directories(${PROJECT_NAME} PUBLIC ${FREETYPE_DIR}/include) -target_link_directories(${PROJECT_NAME} PUBLIC ${FREETYPE_LIB_DIR}) +target_include_directories(${LIB_NAME} PUBLIC ${FREETYPE_DIR}/include) +target_link_directories(${LIB_NAME} PUBLIC ${FREETYPE_LIB_DIR}) set(DEPS glfw assimp freetype ${CMAKE_DL_LIBS}) -target_link_libraries(${PROJECT_NAME} ${DEPS}) +target_link_libraries(${LIB_NAME} ${DEPS}) if(BUILD_TESTS) if(UNIX) @@ -72,10 +73,19 @@ if(BUILD_TESTS) set(TEST_SRC main.cpp ${LIB_SRC} ${RENDER_TEST} ${ARMATURE_TEST} ${MODEL_TEST} ${ANIMATION_TEST}) add_executable(vb01Tests ${TEST_SRC}) - target_link_libraries(vb01Tests ${PROJECT_NAME} ${DEPS} cppunit) + target_link_libraries(vb01Tests ${LIB_NAME} ${DEPS} cppunit) endif() if(BUILD_SAMPLES) add_executable(textSample textSample.cpp) - target_link_libraries(textSample ${PROJECT_NAME}) + target_link_libraries(textSample ${LIB_NAME}) + + add_executable(skeletalAnimationSample skeletalAnimationSample.cpp) + target_link_libraries(skeletalAnimationSample ${LIB_NAME}) + + add_executable(morphAnimationSample morphAnimationSample.cpp) + target_link_libraries(morphAnimationSample ${LIB_NAME}) + + add_executable(lightSample lightSample.cpp) + target_link_libraries(lightSample ${LIB_NAME}) endif() diff --git a/box.cpp b/box.cpp index f033e1f..c686e79 100755 --- a/box.cpp +++ b/box.cpp @@ -41,24 +41,24 @@ namespace vb01{ Vector2(0, 0), Vector2(1, 0) }; - unsigned int data[]={ - 0, 3, 1, 4, 3, 0, 1, 3, 2, - 5, 3, 3, 1, 3, 2, 4, 3, 0, + unsigned int data[] = { + 1, 3, 2, 4, 3, 0, 0, 3, 1, + 4, 3, 0, 1, 3, 2, 5, 3, 3, - 2, 0, 1, 6, 0, 0, 3, 0, 2, - 6, 0, 2, 7, 0, 0, 3, 0, 3, + 3, 0, 2, 6, 0, 0, 2, 0, 1, + 3, 0, 3, 7, 0, 0, 6, 0, 2, - 3, 2, 0, 7, 2, 1, 4, 2, 2, - 4, 2, 2, 0, 2, 3, 3, 2, 0, + 4, 2, 2, 7, 2, 1, 3, 2, 0, + 3, 2, 0, 0, 2, 3, 4, 2, 1, - 1, 5, 0, 5, 5, 1, 6, 5, 2, - 6, 5, 2, 2, 5, 3, 1, 5, 0, + 1, 4, 0, 5, 4, 1, 6, 4, 2, + 6, 4, 2, 2, 4, 3, 1, 4, 0, - 0, 1, 0, 1, 1, 1, 2, 1, 2, - 2, 1, 2, 3, 1, 3, 0, 1, 0, + 2, 1, 2, 1, 1, 1, 0, 1, 0, + 0, 1, 0, 3, 1, 3, 2, 1, 2, - 4, 4, 3, 6, 4, 1, 5, 4, 2, - 6, 4, 1, 4, 4, 3, 7, 4, 0 + 5, 5, 2, 6, 5, 1, 4, 5, 3, + 7, 5, 0, 4, 5, 3, 6, 5, 1 }; for(int i = 0; i < 3 * numTris; i++){ Vertex v; diff --git a/glad.c b/glad.c deleted file mode 100644 index 38158e4..0000000 --- a/glad.c +++ /dev/null @@ -1,1840 +0,0 @@ -/* - - OpenGL loader generated by glad 0.1.34 on Fri Mar 26 13:29:23 2021. - - Language/Generator: C/C++ - Specification: gl - APIs: gl=3.3 - Profile: compatibility - Extensions: - - Loader: True - Local files: True - Omit khrplatform: False - Reproducible: False - - Commandline: - --profile="compatibility" --api="gl=3.3" --generator="c" --spec="gl" --local-files --extensions="" - Online: - https://glad.dav1d.de/#profile=compatibility&language=c&specification=gl&loader=on&api=gl%3D3.3 -*/ - -#include -#include -#include -#include "glad.h" - -static void* get_proc(const char *namez); - -#if defined(_WIN32) || defined(__CYGWIN__) -#ifndef _WINDOWS_ -#undef APIENTRY -#endif -#include -static HMODULE libGL; - -typedef void* (APIENTRYP PFNWGLGETPROCADDRESSPROC_PRIVATE)(const char*); -static PFNWGLGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr; - -#ifdef _MSC_VER -#ifdef __has_include - #if __has_include() - #define HAVE_WINAPIFAMILY 1 - #endif -#elif _MSC_VER >= 1700 && !_USING_V110_SDK71_ - #define HAVE_WINAPIFAMILY 1 -#endif -#endif - -#ifdef HAVE_WINAPIFAMILY - #include - #if !WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) && WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_APP) - #define IS_UWP 1 - #endif -#endif - -static -int open_gl(void) { -#ifndef IS_UWP - libGL = LoadLibraryW(L"opengl32.dll"); - if(libGL != NULL) { - void (* tmp)(void); - tmp = (void(*)(void)) GetProcAddress(libGL, "wglGetProcAddress"); - gladGetProcAddressPtr = (PFNWGLGETPROCADDRESSPROC_PRIVATE) tmp; - return gladGetProcAddressPtr != NULL; - } -#endif - - return 0; -} - -static -void close_gl(void) { - if(libGL != NULL) { - FreeLibrary((HMODULE) libGL); - libGL = NULL; - } -} -#else -#include -static void* libGL; - -#if !defined(__APPLE__) && !defined(__HAIKU__) -typedef void* (APIENTRYP PFNGLXGETPROCADDRESSPROC_PRIVATE)(const char*); -static PFNGLXGETPROCADDRESSPROC_PRIVATE gladGetProcAddressPtr; -#endif - -static -int open_gl(void) { -#ifdef __APPLE__ - static const char *NAMES[] = { - "../Frameworks/OpenGL.framework/OpenGL", - "/Library/Frameworks/OpenGL.framework/OpenGL", - "/System/Library/Frameworks/OpenGL.framework/OpenGL", - "/System/Library/Frameworks/OpenGL.framework/Versions/Current/OpenGL" - }; -#else - static const char *NAMES[] = {"libGL.so.1", "libGL.so"}; -#endif - - unsigned int index = 0; - for(index = 0; index < (sizeof(NAMES) / sizeof(NAMES[0])); index++) { - libGL = dlopen(NAMES[index], RTLD_NOW | RTLD_GLOBAL); - - if(libGL != NULL) { -#if defined(__APPLE__) || defined(__HAIKU__) - return 1; -#else - gladGetProcAddressPtr = (PFNGLXGETPROCADDRESSPROC_PRIVATE)dlsym(libGL, - "glXGetProcAddressARB"); - return gladGetProcAddressPtr != NULL; -#endif - } - } - - return 0; -} - -static -void close_gl(void) { - if(libGL != NULL) { - dlclose(libGL); - libGL = NULL; - } -} -#endif - -static -void* get_proc(const char *namez) { - void* result = NULL; - if(libGL == NULL) return NULL; - -#if !defined(__APPLE__) && !defined(__HAIKU__) - if(gladGetProcAddressPtr != NULL) { - result = gladGetProcAddressPtr(namez); - } -#endif - if(result == NULL) { -#if defined(_WIN32) || defined(__CYGWIN__) - result = (void*)GetProcAddress((HMODULE) libGL, namez); -#else - result = dlsym(libGL, namez); -#endif - } - - return result; -} - -int gladLoadGL(void) { - int status = 0; - - if(open_gl()) { - status = gladLoadGLLoader(&get_proc); - close_gl(); - } - - return status; -} - -struct gladGLversionStruct GLVersion = { 0, 0 }; - -#if defined(GL_ES_VERSION_3_0) || defined(GL_VERSION_3_0) -#define _GLAD_IS_SOME_NEW_VERSION 1 -#endif - -static int max_loaded_major; -static int max_loaded_minor; - -static const char *exts = NULL; -static int num_exts_i = 0; -static char **exts_i = NULL; - -static int get_exts(void) { -#ifdef _GLAD_IS_SOME_NEW_VERSION - if(max_loaded_major < 3) { -#endif - exts = (const char *)glGetString(GL_EXTENSIONS); -#ifdef _GLAD_IS_SOME_NEW_VERSION - } else { - unsigned int index; - - num_exts_i = 0; - glGetIntegerv(GL_NUM_EXTENSIONS, &num_exts_i); - if (num_exts_i > 0) { - exts_i = (char **)malloc((size_t)num_exts_i * (sizeof *exts_i)); - } - - if (exts_i == NULL) { - return 0; - } - - for(index = 0; index < (unsigned)num_exts_i; index++) { - const char *gl_str_tmp = (const char*)glGetStringi(GL_EXTENSIONS, index); - size_t len = strlen(gl_str_tmp); - - char *local_str = (char*)malloc((len+1) * sizeof(char)); - if(local_str != NULL) { - memcpy(local_str, gl_str_tmp, (len+1) * sizeof(char)); - } - exts_i[index] = local_str; - } - } -#endif - return 1; -} - -static void free_exts(void) { - if (exts_i != NULL) { - int index; - for(index = 0; index < num_exts_i; index++) { - free((char *)exts_i[index]); - } - free((void *)exts_i); - exts_i = NULL; - } -} - -static int has_ext(const char *ext) { -#ifdef _GLAD_IS_SOME_NEW_VERSION - if(max_loaded_major < 3) { -#endif - const char *extensions; - const char *loc; - const char *terminator; - extensions = exts; - if(extensions == NULL || ext == NULL) { - return 0; - } - - while(1) { - loc = strstr(extensions, ext); - if(loc == NULL) { - return 0; - } - - terminator = loc + strlen(ext); - if((loc == extensions || *(loc - 1) == ' ') && - (*terminator == ' ' || *terminator == '\0')) { - return 1; - } - extensions = terminator; - } -#ifdef _GLAD_IS_SOME_NEW_VERSION - } else { - int index; - if(exts_i == NULL) return 0; - for(index = 0; index < num_exts_i; index++) { - const char *e = exts_i[index]; - - if(exts_i[index] != NULL && strcmp(e, ext) == 0) { - return 1; - } - } - } -#endif - - return 0; -} -int GLAD_GL_VERSION_1_0 = 0; -int GLAD_GL_VERSION_1_1 = 0; -int GLAD_GL_VERSION_1_2 = 0; -int GLAD_GL_VERSION_1_3 = 0; -int GLAD_GL_VERSION_1_4 = 0; -int GLAD_GL_VERSION_1_5 = 0; -int GLAD_GL_VERSION_2_0 = 0; -int GLAD_GL_VERSION_2_1 = 0; -int GLAD_GL_VERSION_3_0 = 0; -int GLAD_GL_VERSION_3_1 = 0; -int GLAD_GL_VERSION_3_2 = 0; -int GLAD_GL_VERSION_3_3 = 0; -PFNGLACCUMPROC glad_glAccum = NULL; -PFNGLACTIVETEXTUREPROC glad_glActiveTexture = NULL; -PFNGLALPHAFUNCPROC glad_glAlphaFunc = NULL; -PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident = NULL; -PFNGLARRAYELEMENTPROC glad_glArrayElement = NULL; -PFNGLATTACHSHADERPROC glad_glAttachShader = NULL; -PFNGLBEGINPROC glad_glBegin = NULL; -PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender = NULL; -PFNGLBEGINQUERYPROC glad_glBeginQuery = NULL; -PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback = NULL; -PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation = NULL; -PFNGLBINDBUFFERPROC glad_glBindBuffer = NULL; -PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase = NULL; -PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange = NULL; -PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation = NULL; -PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed = NULL; -PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer = NULL; -PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer = NULL; -PFNGLBINDSAMPLERPROC glad_glBindSampler = NULL; -PFNGLBINDTEXTUREPROC glad_glBindTexture = NULL; -PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray = NULL; -PFNGLBITMAPPROC glad_glBitmap = NULL; -PFNGLBLENDCOLORPROC glad_glBlendColor = NULL; -PFNGLBLENDEQUATIONPROC glad_glBlendEquation = NULL; -PFNGLBLENDEQUATIONSEPARATEPROC glad_glBlendEquationSeparate = NULL; -PFNGLBLENDFUNCPROC glad_glBlendFunc = NULL; -PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate = NULL; -PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer = NULL; -PFNGLBUFFERDATAPROC glad_glBufferData = NULL; -PFNGLBUFFERSUBDATAPROC glad_glBufferSubData = NULL; -PFNGLCALLLISTPROC glad_glCallList = NULL; -PFNGLCALLLISTSPROC glad_glCallLists = NULL; -PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus = NULL; -PFNGLCLAMPCOLORPROC glad_glClampColor = NULL; -PFNGLCLEARPROC glad_glClear = NULL; -PFNGLCLEARACCUMPROC glad_glClearAccum = NULL; -PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi = NULL; -PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv = NULL; -PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv = NULL; -PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv = NULL; -PFNGLCLEARCOLORPROC glad_glClearColor = NULL; -PFNGLCLEARDEPTHPROC glad_glClearDepth = NULL; -PFNGLCLEARINDEXPROC glad_glClearIndex = NULL; -PFNGLCLEARSTENCILPROC glad_glClearStencil = NULL; -PFNGLCLIENTACTIVETEXTUREPROC glad_glClientActiveTexture = NULL; -PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync = NULL; -PFNGLCLIPPLANEPROC glad_glClipPlane = NULL; -PFNGLCOLOR3BPROC glad_glColor3b = NULL; -PFNGLCOLOR3BVPROC glad_glColor3bv = NULL; -PFNGLCOLOR3DPROC glad_glColor3d = NULL; -PFNGLCOLOR3DVPROC glad_glColor3dv = NULL; -PFNGLCOLOR3FPROC glad_glColor3f = NULL; -PFNGLCOLOR3FVPROC glad_glColor3fv = NULL; -PFNGLCOLOR3IPROC glad_glColor3i = NULL; -PFNGLCOLOR3IVPROC glad_glColor3iv = NULL; -PFNGLCOLOR3SPROC glad_glColor3s = NULL; -PFNGLCOLOR3SVPROC glad_glColor3sv = NULL; -PFNGLCOLOR3UBPROC glad_glColor3ub = NULL; -PFNGLCOLOR3UBVPROC glad_glColor3ubv = NULL; -PFNGLCOLOR3UIPROC glad_glColor3ui = NULL; -PFNGLCOLOR3UIVPROC glad_glColor3uiv = NULL; -PFNGLCOLOR3USPROC glad_glColor3us = NULL; -PFNGLCOLOR3USVPROC glad_glColor3usv = NULL; -PFNGLCOLOR4BPROC glad_glColor4b = NULL; -PFNGLCOLOR4BVPROC glad_glColor4bv = NULL; -PFNGLCOLOR4DPROC glad_glColor4d = NULL; -PFNGLCOLOR4DVPROC glad_glColor4dv = NULL; -PFNGLCOLOR4FPROC glad_glColor4f = NULL; -PFNGLCOLOR4FVPROC glad_glColor4fv = NULL; -PFNGLCOLOR4IPROC glad_glColor4i = NULL; -PFNGLCOLOR4IVPROC glad_glColor4iv = NULL; -PFNGLCOLOR4SPROC glad_glColor4s = NULL; -PFNGLCOLOR4SVPROC glad_glColor4sv = NULL; -PFNGLCOLOR4UBPROC glad_glColor4ub = NULL; -PFNGLCOLOR4UBVPROC glad_glColor4ubv = NULL; -PFNGLCOLOR4UIPROC glad_glColor4ui = NULL; -PFNGLCOLOR4UIVPROC glad_glColor4uiv = NULL; -PFNGLCOLOR4USPROC glad_glColor4us = NULL; -PFNGLCOLOR4USVPROC glad_glColor4usv = NULL; -PFNGLCOLORMASKPROC glad_glColorMask = NULL; -PFNGLCOLORMASKIPROC glad_glColorMaski = NULL; -PFNGLCOLORMATERIALPROC glad_glColorMaterial = NULL; -PFNGLCOLORP3UIPROC glad_glColorP3ui = NULL; -PFNGLCOLORP3UIVPROC glad_glColorP3uiv = NULL; -PFNGLCOLORP4UIPROC glad_glColorP4ui = NULL; -PFNGLCOLORP4UIVPROC glad_glColorP4uiv = NULL; -PFNGLCOLORPOINTERPROC glad_glColorPointer = NULL; -PFNGLCOMPILESHADERPROC glad_glCompileShader = NULL; -PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D = NULL; -PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D = NULL; -PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D = NULL; -PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D = NULL; -PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D = NULL; -PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D = NULL; -PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData = NULL; -PFNGLCOPYPIXELSPROC glad_glCopyPixels = NULL; -PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D = NULL; -PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D = NULL; -PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D = NULL; -PFNGLCOPYTEXSUBIMAGE2DPROC glad_glCopyTexSubImage2D = NULL; -PFNGLCOPYTEXSUBIMAGE3DPROC glad_glCopyTexSubImage3D = NULL; -PFNGLCREATEPROGRAMPROC glad_glCreateProgram = NULL; -PFNGLCREATESHADERPROC glad_glCreateShader = NULL; -PFNGLCULLFACEPROC glad_glCullFace = NULL; -PFNGLDELETEBUFFERSPROC glad_glDeleteBuffers = NULL; -PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers = NULL; -PFNGLDELETELISTSPROC glad_glDeleteLists = NULL; -PFNGLDELETEPROGRAMPROC glad_glDeleteProgram = NULL; -PFNGLDELETEQUERIESPROC glad_glDeleteQueries = NULL; -PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers = NULL; -PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers = NULL; -PFNGLDELETESHADERPROC glad_glDeleteShader = NULL; -PFNGLDELETESYNCPROC glad_glDeleteSync = NULL; -PFNGLDELETETEXTURESPROC glad_glDeleteTextures = NULL; -PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays = NULL; -PFNGLDEPTHFUNCPROC glad_glDepthFunc = NULL; -PFNGLDEPTHMASKPROC glad_glDepthMask = NULL; -PFNGLDEPTHRANGEPROC glad_glDepthRange = NULL; -PFNGLDETACHSHADERPROC glad_glDetachShader = NULL; -PFNGLDISABLEPROC glad_glDisable = NULL; -PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState = NULL; -PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray = NULL; -PFNGLDISABLEIPROC glad_glDisablei = NULL; -PFNGLDRAWARRAYSPROC glad_glDrawArrays = NULL; -PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced = NULL; -PFNGLDRAWBUFFERPROC glad_glDrawBuffer = NULL; -PFNGLDRAWBUFFERSPROC glad_glDrawBuffers = NULL; -PFNGLDRAWELEMENTSPROC glad_glDrawElements = NULL; -PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex = NULL; -PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced = NULL; -PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex = NULL; -PFNGLDRAWPIXELSPROC glad_glDrawPixels = NULL; -PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements = NULL; -PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex = NULL; -PFNGLEDGEFLAGPROC glad_glEdgeFlag = NULL; -PFNGLEDGEFLAGPOINTERPROC glad_glEdgeFlagPointer = NULL; -PFNGLEDGEFLAGVPROC glad_glEdgeFlagv = NULL; -PFNGLENABLEPROC glad_glEnable = NULL; -PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState = NULL; -PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray = NULL; -PFNGLENABLEIPROC glad_glEnablei = NULL; -PFNGLENDPROC glad_glEnd = NULL; -PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender = NULL; -PFNGLENDLISTPROC glad_glEndList = NULL; -PFNGLENDQUERYPROC glad_glEndQuery = NULL; -PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback = NULL; -PFNGLEVALCOORD1DPROC glad_glEvalCoord1d = NULL; -PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv = NULL; -PFNGLEVALCOORD1FPROC glad_glEvalCoord1f = NULL; -PFNGLEVALCOORD1FVPROC glad_glEvalCoord1fv = NULL; -PFNGLEVALCOORD2DPROC glad_glEvalCoord2d = NULL; -PFNGLEVALCOORD2DVPROC glad_glEvalCoord2dv = NULL; -PFNGLEVALCOORD2FPROC glad_glEvalCoord2f = NULL; -PFNGLEVALCOORD2FVPROC glad_glEvalCoord2fv = NULL; -PFNGLEVALMESH1PROC glad_glEvalMesh1 = NULL; -PFNGLEVALMESH2PROC glad_glEvalMesh2 = NULL; -PFNGLEVALPOINT1PROC glad_glEvalPoint1 = NULL; -PFNGLEVALPOINT2PROC glad_glEvalPoint2 = NULL; -PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer = NULL; -PFNGLFENCESYNCPROC glad_glFenceSync = NULL; -PFNGLFINISHPROC glad_glFinish = NULL; -PFNGLFLUSHPROC glad_glFlush = NULL; -PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange = NULL; -PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer = NULL; -PFNGLFOGCOORDDPROC glad_glFogCoordd = NULL; -PFNGLFOGCOORDDVPROC glad_glFogCoorddv = NULL; -PFNGLFOGCOORDFPROC glad_glFogCoordf = NULL; -PFNGLFOGCOORDFVPROC glad_glFogCoordfv = NULL; -PFNGLFOGFPROC glad_glFogf = NULL; -PFNGLFOGFVPROC glad_glFogfv = NULL; -PFNGLFOGIPROC glad_glFogi = NULL; -PFNGLFOGIVPROC glad_glFogiv = NULL; -PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer = NULL; -PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture = NULL; -PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D = NULL; -PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D = NULL; -PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D = NULL; -PFNGLFRAMEBUFFERTEXTURELAYERPROC glad_glFramebufferTextureLayer = NULL; -PFNGLFRONTFACEPROC glad_glFrontFace = NULL; -PFNGLFRUSTUMPROC glad_glFrustum = NULL; -PFNGLGENBUFFERSPROC glad_glGenBuffers = NULL; -PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers = NULL; -PFNGLGENLISTSPROC glad_glGenLists = NULL; -PFNGLGENQUERIESPROC glad_glGenQueries = NULL; -PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers = NULL; -PFNGLGENSAMPLERSPROC glad_glGenSamplers = NULL; -PFNGLGENTEXTURESPROC glad_glGenTextures = NULL; -PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays = NULL; -PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap = NULL; -PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib = NULL; -PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform = NULL; -PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName = NULL; -PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv = NULL; -PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName = NULL; -PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv = NULL; -PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders = NULL; -PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation = NULL; -PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v = NULL; -PFNGLGETBOOLEANVPROC glad_glGetBooleanv = NULL; -PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v = NULL; -PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv = NULL; -PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv = NULL; -PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData = NULL; -PFNGLGETCLIPPLANEPROC glad_glGetClipPlane = NULL; -PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage = NULL; -PFNGLGETDOUBLEVPROC glad_glGetDoublev = NULL; -PFNGLGETERRORPROC glad_glGetError = NULL; -PFNGLGETFLOATVPROC glad_glGetFloatv = NULL; -PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex = NULL; -PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation = NULL; -PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv = NULL; -PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v = NULL; -PFNGLGETINTEGER64VPROC glad_glGetInteger64v = NULL; -PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v = NULL; -PFNGLGETINTEGERVPROC glad_glGetIntegerv = NULL; -PFNGLGETLIGHTFVPROC glad_glGetLightfv = NULL; -PFNGLGETLIGHTIVPROC glad_glGetLightiv = NULL; -PFNGLGETMAPDVPROC glad_glGetMapdv = NULL; -PFNGLGETMAPFVPROC glad_glGetMapfv = NULL; -PFNGLGETMAPIVPROC glad_glGetMapiv = NULL; -PFNGLGETMATERIALFVPROC glad_glGetMaterialfv = NULL; -PFNGLGETMATERIALIVPROC glad_glGetMaterialiv = NULL; -PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv = NULL; -PFNGLGETPIXELMAPFVPROC glad_glGetPixelMapfv = NULL; -PFNGLGETPIXELMAPUIVPROC glad_glGetPixelMapuiv = NULL; -PFNGLGETPIXELMAPUSVPROC glad_glGetPixelMapusv = NULL; -PFNGLGETPOINTERVPROC glad_glGetPointerv = NULL; -PFNGLGETPOLYGONSTIPPLEPROC glad_glGetPolygonStipple = NULL; -PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog = NULL; -PFNGLGETPROGRAMIVPROC glad_glGetProgramiv = NULL; -PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v = NULL; -PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv = NULL; -PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v = NULL; -PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv = NULL; -PFNGLGETQUERYIVPROC glad_glGetQueryiv = NULL; -PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv = NULL; -PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv = NULL; -PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv = NULL; -PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv = NULL; -PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv = NULL; -PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog = NULL; -PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource = NULL; -PFNGLGETSHADERIVPROC glad_glGetShaderiv = NULL; -PFNGLGETSTRINGPROC glad_glGetString = NULL; -PFNGLGETSTRINGIPROC glad_glGetStringi = NULL; -PFNGLGETSYNCIVPROC glad_glGetSynciv = NULL; -PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv = NULL; -PFNGLGETTEXENVIVPROC glad_glGetTexEnviv = NULL; -PFNGLGETTEXGENDVPROC glad_glGetTexGendv = NULL; -PFNGLGETTEXGENFVPROC glad_glGetTexGenfv = NULL; -PFNGLGETTEXGENIVPROC glad_glGetTexGeniv = NULL; -PFNGLGETTEXIMAGEPROC glad_glGetTexImage = NULL; -PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv = NULL; -PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv = NULL; -PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv = NULL; -PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv = NULL; -PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv = NULL; -PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv = NULL; -PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying = NULL; -PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex = NULL; -PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices = NULL; -PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation = NULL; -PFNGLGETUNIFORMFVPROC glad_glGetUniformfv = NULL; -PFNGLGETUNIFORMIVPROC glad_glGetUniformiv = NULL; -PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv = NULL; -PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv = NULL; -PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv = NULL; -PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv = NULL; -PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv = NULL; -PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv = NULL; -PFNGLGETVERTEXATTRIBIVPROC glad_glGetVertexAttribiv = NULL; -PFNGLHINTPROC glad_glHint = NULL; -PFNGLINDEXMASKPROC glad_glIndexMask = NULL; -PFNGLINDEXPOINTERPROC glad_glIndexPointer = NULL; -PFNGLINDEXDPROC glad_glIndexd = NULL; -PFNGLINDEXDVPROC glad_glIndexdv = NULL; -PFNGLINDEXFPROC glad_glIndexf = NULL; -PFNGLINDEXFVPROC glad_glIndexfv = NULL; -PFNGLINDEXIPROC glad_glIndexi = NULL; -PFNGLINDEXIVPROC glad_glIndexiv = NULL; -PFNGLINDEXSPROC glad_glIndexs = NULL; -PFNGLINDEXSVPROC glad_glIndexsv = NULL; -PFNGLINDEXUBPROC glad_glIndexub = NULL; -PFNGLINDEXUBVPROC glad_glIndexubv = NULL; -PFNGLINITNAMESPROC glad_glInitNames = NULL; -PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays = NULL; -PFNGLISBUFFERPROC glad_glIsBuffer = NULL; -PFNGLISENABLEDPROC glad_glIsEnabled = NULL; -PFNGLISENABLEDIPROC glad_glIsEnabledi = NULL; -PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer = NULL; -PFNGLISLISTPROC glad_glIsList = NULL; -PFNGLISPROGRAMPROC glad_glIsProgram = NULL; -PFNGLISQUERYPROC glad_glIsQuery = NULL; -PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer = NULL; -PFNGLISSAMPLERPROC glad_glIsSampler = NULL; -PFNGLISSHADERPROC glad_glIsShader = NULL; -PFNGLISSYNCPROC glad_glIsSync = NULL; -PFNGLISTEXTUREPROC glad_glIsTexture = NULL; -PFNGLISVERTEXARRAYPROC glad_glIsVertexArray = NULL; -PFNGLLIGHTMODELFPROC glad_glLightModelf = NULL; -PFNGLLIGHTMODELFVPROC glad_glLightModelfv = NULL; -PFNGLLIGHTMODELIPROC glad_glLightModeli = NULL; -PFNGLLIGHTMODELIVPROC glad_glLightModeliv = NULL; -PFNGLLIGHTFPROC glad_glLightf = NULL; -PFNGLLIGHTFVPROC glad_glLightfv = NULL; -PFNGLLIGHTIPROC glad_glLighti = NULL; -PFNGLLIGHTIVPROC glad_glLightiv = NULL; -PFNGLLINESTIPPLEPROC glad_glLineStipple = NULL; -PFNGLLINEWIDTHPROC glad_glLineWidth = NULL; -PFNGLLINKPROGRAMPROC glad_glLinkProgram = NULL; -PFNGLLISTBASEPROC glad_glListBase = NULL; -PFNGLLOADIDENTITYPROC glad_glLoadIdentity = NULL; -PFNGLLOADMATRIXDPROC glad_glLoadMatrixd = NULL; -PFNGLLOADMATRIXFPROC glad_glLoadMatrixf = NULL; -PFNGLLOADNAMEPROC glad_glLoadName = NULL; -PFNGLLOADTRANSPOSEMATRIXDPROC glad_glLoadTransposeMatrixd = NULL; -PFNGLLOADTRANSPOSEMATRIXFPROC glad_glLoadTransposeMatrixf = NULL; -PFNGLLOGICOPPROC glad_glLogicOp = NULL; -PFNGLMAP1DPROC glad_glMap1d = NULL; -PFNGLMAP1FPROC glad_glMap1f = NULL; -PFNGLMAP2DPROC glad_glMap2d = NULL; -PFNGLMAP2FPROC glad_glMap2f = NULL; -PFNGLMAPBUFFERPROC glad_glMapBuffer = NULL; -PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange = NULL; -PFNGLMAPGRID1DPROC glad_glMapGrid1d = NULL; -PFNGLMAPGRID1FPROC glad_glMapGrid1f = NULL; -PFNGLMAPGRID2DPROC glad_glMapGrid2d = NULL; -PFNGLMAPGRID2FPROC glad_glMapGrid2f = NULL; -PFNGLMATERIALFPROC glad_glMaterialf = NULL; -PFNGLMATERIALFVPROC glad_glMaterialfv = NULL; -PFNGLMATERIALIPROC glad_glMateriali = NULL; -PFNGLMATERIALIVPROC glad_glMaterialiv = NULL; -PFNGLMATRIXMODEPROC glad_glMatrixMode = NULL; -PFNGLMULTMATRIXDPROC glad_glMultMatrixd = NULL; -PFNGLMULTMATRIXFPROC glad_glMultMatrixf = NULL; -PFNGLMULTTRANSPOSEMATRIXDPROC glad_glMultTransposeMatrixd = NULL; -PFNGLMULTTRANSPOSEMATRIXFPROC glad_glMultTransposeMatrixf = NULL; -PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays = NULL; -PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements = NULL; -PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex = NULL; -PFNGLMULTITEXCOORD1DPROC glad_glMultiTexCoord1d = NULL; -PFNGLMULTITEXCOORD1DVPROC glad_glMultiTexCoord1dv = NULL; -PFNGLMULTITEXCOORD1FPROC glad_glMultiTexCoord1f = NULL; -PFNGLMULTITEXCOORD1FVPROC glad_glMultiTexCoord1fv = NULL; -PFNGLMULTITEXCOORD1IPROC glad_glMultiTexCoord1i = NULL; -PFNGLMULTITEXCOORD1IVPROC glad_glMultiTexCoord1iv = NULL; -PFNGLMULTITEXCOORD1SPROC glad_glMultiTexCoord1s = NULL; -PFNGLMULTITEXCOORD1SVPROC glad_glMultiTexCoord1sv = NULL; -PFNGLMULTITEXCOORD2DPROC glad_glMultiTexCoord2d = NULL; -PFNGLMULTITEXCOORD2DVPROC glad_glMultiTexCoord2dv = NULL; -PFNGLMULTITEXCOORD2FPROC glad_glMultiTexCoord2f = NULL; -PFNGLMULTITEXCOORD2FVPROC glad_glMultiTexCoord2fv = NULL; -PFNGLMULTITEXCOORD2IPROC glad_glMultiTexCoord2i = NULL; -PFNGLMULTITEXCOORD2IVPROC glad_glMultiTexCoord2iv = NULL; -PFNGLMULTITEXCOORD2SPROC glad_glMultiTexCoord2s = NULL; -PFNGLMULTITEXCOORD2SVPROC glad_glMultiTexCoord2sv = NULL; -PFNGLMULTITEXCOORD3DPROC glad_glMultiTexCoord3d = NULL; -PFNGLMULTITEXCOORD3DVPROC glad_glMultiTexCoord3dv = NULL; -PFNGLMULTITEXCOORD3FPROC glad_glMultiTexCoord3f = NULL; -PFNGLMULTITEXCOORD3FVPROC glad_glMultiTexCoord3fv = NULL; -PFNGLMULTITEXCOORD3IPROC glad_glMultiTexCoord3i = NULL; -PFNGLMULTITEXCOORD3IVPROC glad_glMultiTexCoord3iv = NULL; -PFNGLMULTITEXCOORD3SPROC glad_glMultiTexCoord3s = NULL; -PFNGLMULTITEXCOORD3SVPROC glad_glMultiTexCoord3sv = NULL; -PFNGLMULTITEXCOORD4DPROC glad_glMultiTexCoord4d = NULL; -PFNGLMULTITEXCOORD4DVPROC glad_glMultiTexCoord4dv = NULL; -PFNGLMULTITEXCOORD4FPROC glad_glMultiTexCoord4f = NULL; -PFNGLMULTITEXCOORD4FVPROC glad_glMultiTexCoord4fv = NULL; -PFNGLMULTITEXCOORD4IPROC glad_glMultiTexCoord4i = NULL; -PFNGLMULTITEXCOORD4IVPROC glad_glMultiTexCoord4iv = NULL; -PFNGLMULTITEXCOORD4SPROC glad_glMultiTexCoord4s = NULL; -PFNGLMULTITEXCOORD4SVPROC glad_glMultiTexCoord4sv = NULL; -PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui = NULL; -PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv = NULL; -PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui = NULL; -PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv = NULL; -PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui = NULL; -PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv = NULL; -PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui = NULL; -PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv = NULL; -PFNGLNEWLISTPROC glad_glNewList = NULL; -PFNGLNORMAL3BPROC glad_glNormal3b = NULL; -PFNGLNORMAL3BVPROC glad_glNormal3bv = NULL; -PFNGLNORMAL3DPROC glad_glNormal3d = NULL; -PFNGLNORMAL3DVPROC glad_glNormal3dv = NULL; -PFNGLNORMAL3FPROC glad_glNormal3f = NULL; -PFNGLNORMAL3FVPROC glad_glNormal3fv = NULL; -PFNGLNORMAL3IPROC glad_glNormal3i = NULL; -PFNGLNORMAL3IVPROC glad_glNormal3iv = NULL; -PFNGLNORMAL3SPROC glad_glNormal3s = NULL; -PFNGLNORMAL3SVPROC glad_glNormal3sv = NULL; -PFNGLNORMALP3UIPROC glad_glNormalP3ui = NULL; -PFNGLNORMALP3UIVPROC glad_glNormalP3uiv = NULL; -PFNGLNORMALPOINTERPROC glad_glNormalPointer = NULL; -PFNGLORTHOPROC glad_glOrtho = NULL; -PFNGLPASSTHROUGHPROC glad_glPassThrough = NULL; -PFNGLPIXELMAPFVPROC glad_glPixelMapfv = NULL; -PFNGLPIXELMAPUIVPROC glad_glPixelMapuiv = NULL; -PFNGLPIXELMAPUSVPROC glad_glPixelMapusv = NULL; -PFNGLPIXELSTOREFPROC glad_glPixelStoref = NULL; -PFNGLPIXELSTOREIPROC glad_glPixelStorei = NULL; -PFNGLPIXELTRANSFERFPROC glad_glPixelTransferf = NULL; -PFNGLPIXELTRANSFERIPROC glad_glPixelTransferi = NULL; -PFNGLPIXELZOOMPROC glad_glPixelZoom = NULL; -PFNGLPOINTPARAMETERFPROC glad_glPointParameterf = NULL; -PFNGLPOINTPARAMETERFVPROC glad_glPointParameterfv = NULL; -PFNGLPOINTPARAMETERIPROC glad_glPointParameteri = NULL; -PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv = NULL; -PFNGLPOINTSIZEPROC glad_glPointSize = NULL; -PFNGLPOLYGONMODEPROC glad_glPolygonMode = NULL; -PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset = NULL; -PFNGLPOLYGONSTIPPLEPROC glad_glPolygonStipple = NULL; -PFNGLPOPATTRIBPROC glad_glPopAttrib = NULL; -PFNGLPOPCLIENTATTRIBPROC glad_glPopClientAttrib = NULL; -PFNGLPOPMATRIXPROC glad_glPopMatrix = NULL; -PFNGLPOPNAMEPROC glad_glPopName = NULL; -PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex = NULL; -PFNGLPRIORITIZETEXTURESPROC glad_glPrioritizeTextures = NULL; -PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex = NULL; -PFNGLPUSHATTRIBPROC glad_glPushAttrib = NULL; -PFNGLPUSHCLIENTATTRIBPROC glad_glPushClientAttrib = NULL; -PFNGLPUSHMATRIXPROC glad_glPushMatrix = NULL; -PFNGLPUSHNAMEPROC glad_glPushName = NULL; -PFNGLQUERYCOUNTERPROC glad_glQueryCounter = NULL; -PFNGLRASTERPOS2DPROC glad_glRasterPos2d = NULL; -PFNGLRASTERPOS2DVPROC glad_glRasterPos2dv = NULL; -PFNGLRASTERPOS2FPROC glad_glRasterPos2f = NULL; -PFNGLRASTERPOS2FVPROC glad_glRasterPos2fv = NULL; -PFNGLRASTERPOS2IPROC glad_glRasterPos2i = NULL; -PFNGLRASTERPOS2IVPROC glad_glRasterPos2iv = NULL; -PFNGLRASTERPOS2SPROC glad_glRasterPos2s = NULL; -PFNGLRASTERPOS2SVPROC glad_glRasterPos2sv = NULL; -PFNGLRASTERPOS3DPROC glad_glRasterPos3d = NULL; -PFNGLRASTERPOS3DVPROC glad_glRasterPos3dv = NULL; -PFNGLRASTERPOS3FPROC glad_glRasterPos3f = NULL; -PFNGLRASTERPOS3FVPROC glad_glRasterPos3fv = NULL; -PFNGLRASTERPOS3IPROC glad_glRasterPos3i = NULL; -PFNGLRASTERPOS3IVPROC glad_glRasterPos3iv = NULL; -PFNGLRASTERPOS3SPROC glad_glRasterPos3s = NULL; -PFNGLRASTERPOS3SVPROC glad_glRasterPos3sv = NULL; -PFNGLRASTERPOS4DPROC glad_glRasterPos4d = NULL; -PFNGLRASTERPOS4DVPROC glad_glRasterPos4dv = NULL; -PFNGLRASTERPOS4FPROC glad_glRasterPos4f = NULL; -PFNGLRASTERPOS4FVPROC glad_glRasterPos4fv = NULL; -PFNGLRASTERPOS4IPROC glad_glRasterPos4i = NULL; -PFNGLRASTERPOS4IVPROC glad_glRasterPos4iv = NULL; -PFNGLRASTERPOS4SPROC glad_glRasterPos4s = NULL; -PFNGLRASTERPOS4SVPROC glad_glRasterPos4sv = NULL; -PFNGLREADBUFFERPROC glad_glReadBuffer = NULL; -PFNGLREADPIXELSPROC glad_glReadPixels = NULL; -PFNGLRECTDPROC glad_glRectd = NULL; -PFNGLRECTDVPROC glad_glRectdv = NULL; -PFNGLRECTFPROC glad_glRectf = NULL; -PFNGLRECTFVPROC glad_glRectfv = NULL; -PFNGLRECTIPROC glad_glRecti = NULL; -PFNGLRECTIVPROC glad_glRectiv = NULL; -PFNGLRECTSPROC glad_glRects = NULL; -PFNGLRECTSVPROC glad_glRectsv = NULL; -PFNGLRENDERMODEPROC glad_glRenderMode = NULL; -PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage = NULL; -PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample = NULL; -PFNGLROTATEDPROC glad_glRotated = NULL; -PFNGLROTATEFPROC glad_glRotatef = NULL; -PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage = NULL; -PFNGLSAMPLEMASKIPROC glad_glSampleMaski = NULL; -PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv = NULL; -PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv = NULL; -PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf = NULL; -PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv = NULL; -PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri = NULL; -PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv = NULL; -PFNGLSCALEDPROC glad_glScaled = NULL; -PFNGLSCALEFPROC glad_glScalef = NULL; -PFNGLSCISSORPROC glad_glScissor = NULL; -PFNGLSECONDARYCOLOR3BPROC glad_glSecondaryColor3b = NULL; -PFNGLSECONDARYCOLOR3BVPROC glad_glSecondaryColor3bv = NULL; -PFNGLSECONDARYCOLOR3DPROC glad_glSecondaryColor3d = NULL; -PFNGLSECONDARYCOLOR3DVPROC glad_glSecondaryColor3dv = NULL; -PFNGLSECONDARYCOLOR3FPROC glad_glSecondaryColor3f = NULL; -PFNGLSECONDARYCOLOR3FVPROC glad_glSecondaryColor3fv = NULL; -PFNGLSECONDARYCOLOR3IPROC glad_glSecondaryColor3i = NULL; -PFNGLSECONDARYCOLOR3IVPROC glad_glSecondaryColor3iv = NULL; -PFNGLSECONDARYCOLOR3SPROC glad_glSecondaryColor3s = NULL; -PFNGLSECONDARYCOLOR3SVPROC glad_glSecondaryColor3sv = NULL; -PFNGLSECONDARYCOLOR3UBPROC glad_glSecondaryColor3ub = NULL; -PFNGLSECONDARYCOLOR3UBVPROC glad_glSecondaryColor3ubv = NULL; -PFNGLSECONDARYCOLOR3UIPROC glad_glSecondaryColor3ui = NULL; -PFNGLSECONDARYCOLOR3UIVPROC glad_glSecondaryColor3uiv = NULL; -PFNGLSECONDARYCOLOR3USPROC glad_glSecondaryColor3us = NULL; -PFNGLSECONDARYCOLOR3USVPROC glad_glSecondaryColor3usv = NULL; -PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui = NULL; -PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv = NULL; -PFNGLSECONDARYCOLORPOINTERPROC glad_glSecondaryColorPointer = NULL; -PFNGLSELECTBUFFERPROC glad_glSelectBuffer = NULL; -PFNGLSHADEMODELPROC glad_glShadeModel = NULL; -PFNGLSHADERSOURCEPROC glad_glShaderSource = NULL; -PFNGLSTENCILFUNCPROC glad_glStencilFunc = NULL; -PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate = NULL; -PFNGLSTENCILMASKPROC glad_glStencilMask = NULL; -PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate = NULL; -PFNGLSTENCILOPPROC glad_glStencilOp = NULL; -PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate = NULL; -PFNGLTEXBUFFERPROC glad_glTexBuffer = NULL; -PFNGLTEXCOORD1DPROC glad_glTexCoord1d = NULL; -PFNGLTEXCOORD1DVPROC glad_glTexCoord1dv = NULL; -PFNGLTEXCOORD1FPROC glad_glTexCoord1f = NULL; -PFNGLTEXCOORD1FVPROC glad_glTexCoord1fv = NULL; -PFNGLTEXCOORD1IPROC glad_glTexCoord1i = NULL; -PFNGLTEXCOORD1IVPROC glad_glTexCoord1iv = NULL; -PFNGLTEXCOORD1SPROC glad_glTexCoord1s = NULL; -PFNGLTEXCOORD1SVPROC glad_glTexCoord1sv = NULL; -PFNGLTEXCOORD2DPROC glad_glTexCoord2d = NULL; -PFNGLTEXCOORD2DVPROC glad_glTexCoord2dv = NULL; -PFNGLTEXCOORD2FPROC glad_glTexCoord2f = NULL; -PFNGLTEXCOORD2FVPROC glad_glTexCoord2fv = NULL; -PFNGLTEXCOORD2IPROC glad_glTexCoord2i = NULL; -PFNGLTEXCOORD2IVPROC glad_glTexCoord2iv = NULL; -PFNGLTEXCOORD2SPROC glad_glTexCoord2s = NULL; -PFNGLTEXCOORD2SVPROC glad_glTexCoord2sv = NULL; -PFNGLTEXCOORD3DPROC glad_glTexCoord3d = NULL; -PFNGLTEXCOORD3DVPROC glad_glTexCoord3dv = NULL; -PFNGLTEXCOORD3FPROC glad_glTexCoord3f = NULL; -PFNGLTEXCOORD3FVPROC glad_glTexCoord3fv = NULL; -PFNGLTEXCOORD3IPROC glad_glTexCoord3i = NULL; -PFNGLTEXCOORD3IVPROC glad_glTexCoord3iv = NULL; -PFNGLTEXCOORD3SPROC glad_glTexCoord3s = NULL; -PFNGLTEXCOORD3SVPROC glad_glTexCoord3sv = NULL; -PFNGLTEXCOORD4DPROC glad_glTexCoord4d = NULL; -PFNGLTEXCOORD4DVPROC glad_glTexCoord4dv = NULL; -PFNGLTEXCOORD4FPROC glad_glTexCoord4f = NULL; -PFNGLTEXCOORD4FVPROC glad_glTexCoord4fv = NULL; -PFNGLTEXCOORD4IPROC glad_glTexCoord4i = NULL; -PFNGLTEXCOORD4IVPROC glad_glTexCoord4iv = NULL; -PFNGLTEXCOORD4SPROC glad_glTexCoord4s = NULL; -PFNGLTEXCOORD4SVPROC glad_glTexCoord4sv = NULL; -PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui = NULL; -PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv = NULL; -PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui = NULL; -PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv = NULL; -PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui = NULL; -PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv = NULL; -PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui = NULL; -PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv = NULL; -PFNGLTEXCOORDPOINTERPROC glad_glTexCoordPointer = NULL; -PFNGLTEXENVFPROC glad_glTexEnvf = NULL; -PFNGLTEXENVFVPROC glad_glTexEnvfv = NULL; -PFNGLTEXENVIPROC glad_glTexEnvi = NULL; -PFNGLTEXENVIVPROC glad_glTexEnviv = NULL; -PFNGLTEXGENDPROC glad_glTexGend = NULL; -PFNGLTEXGENDVPROC glad_glTexGendv = NULL; -PFNGLTEXGENFPROC glad_glTexGenf = NULL; -PFNGLTEXGENFVPROC glad_glTexGenfv = NULL; -PFNGLTEXGENIPROC glad_glTexGeni = NULL; -PFNGLTEXGENIVPROC glad_glTexGeniv = NULL; -PFNGLTEXIMAGE1DPROC glad_glTexImage1D = NULL; -PFNGLTEXIMAGE2DPROC glad_glTexImage2D = NULL; -PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample = NULL; -PFNGLTEXIMAGE3DPROC glad_glTexImage3D = NULL; -PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample = NULL; -PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv = NULL; -PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv = NULL; -PFNGLTEXPARAMETERFPROC glad_glTexParameterf = NULL; -PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv = NULL; -PFNGLTEXPARAMETERIPROC glad_glTexParameteri = NULL; -PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv = NULL; -PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D = NULL; -PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D = NULL; -PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D = NULL; -PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings = NULL; -PFNGLTRANSLATEDPROC glad_glTranslated = NULL; -PFNGLTRANSLATEFPROC glad_glTranslatef = NULL; -PFNGLUNIFORM1FPROC glad_glUniform1f = NULL; -PFNGLUNIFORM1FVPROC glad_glUniform1fv = NULL; -PFNGLUNIFORM1IPROC glad_glUniform1i = NULL; -PFNGLUNIFORM1IVPROC glad_glUniform1iv = NULL; -PFNGLUNIFORM1UIPROC glad_glUniform1ui = NULL; -PFNGLUNIFORM1UIVPROC glad_glUniform1uiv = NULL; -PFNGLUNIFORM2FPROC glad_glUniform2f = NULL; -PFNGLUNIFORM2FVPROC glad_glUniform2fv = NULL; -PFNGLUNIFORM2IPROC glad_glUniform2i = NULL; -PFNGLUNIFORM2IVPROC glad_glUniform2iv = NULL; -PFNGLUNIFORM2UIPROC glad_glUniform2ui = NULL; -PFNGLUNIFORM2UIVPROC glad_glUniform2uiv = NULL; -PFNGLUNIFORM3FPROC glad_glUniform3f = NULL; -PFNGLUNIFORM3FVPROC glad_glUniform3fv = NULL; -PFNGLUNIFORM3IPROC glad_glUniform3i = NULL; -PFNGLUNIFORM3IVPROC glad_glUniform3iv = NULL; -PFNGLUNIFORM3UIPROC glad_glUniform3ui = NULL; -PFNGLUNIFORM3UIVPROC glad_glUniform3uiv = NULL; -PFNGLUNIFORM4FPROC glad_glUniform4f = NULL; -PFNGLUNIFORM4FVPROC glad_glUniform4fv = NULL; -PFNGLUNIFORM4IPROC glad_glUniform4i = NULL; -PFNGLUNIFORM4IVPROC glad_glUniform4iv = NULL; -PFNGLUNIFORM4UIPROC glad_glUniform4ui = NULL; -PFNGLUNIFORM4UIVPROC glad_glUniform4uiv = NULL; -PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding = NULL; -PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv = NULL; -PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv = NULL; -PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv = NULL; -PFNGLUNIFORMMATRIX3FVPROC glad_glUniformMatrix3fv = NULL; -PFNGLUNIFORMMATRIX3X2FVPROC glad_glUniformMatrix3x2fv = NULL; -PFNGLUNIFORMMATRIX3X4FVPROC glad_glUniformMatrix3x4fv = NULL; -PFNGLUNIFORMMATRIX4FVPROC glad_glUniformMatrix4fv = NULL; -PFNGLUNIFORMMATRIX4X2FVPROC glad_glUniformMatrix4x2fv = NULL; -PFNGLUNIFORMMATRIX4X3FVPROC glad_glUniformMatrix4x3fv = NULL; -PFNGLUNMAPBUFFERPROC glad_glUnmapBuffer = NULL; -PFNGLUSEPROGRAMPROC glad_glUseProgram = NULL; -PFNGLVALIDATEPROGRAMPROC glad_glValidateProgram = NULL; -PFNGLVERTEX2DPROC glad_glVertex2d = NULL; -PFNGLVERTEX2DVPROC glad_glVertex2dv = NULL; -PFNGLVERTEX2FPROC glad_glVertex2f = NULL; -PFNGLVERTEX2FVPROC glad_glVertex2fv = NULL; -PFNGLVERTEX2IPROC glad_glVertex2i = NULL; -PFNGLVERTEX2IVPROC glad_glVertex2iv = NULL; -PFNGLVERTEX2SPROC glad_glVertex2s = NULL; -PFNGLVERTEX2SVPROC glad_glVertex2sv = NULL; -PFNGLVERTEX3DPROC glad_glVertex3d = NULL; -PFNGLVERTEX3DVPROC glad_glVertex3dv = NULL; -PFNGLVERTEX3FPROC glad_glVertex3f = NULL; -PFNGLVERTEX3FVPROC glad_glVertex3fv = NULL; -PFNGLVERTEX3IPROC glad_glVertex3i = NULL; -PFNGLVERTEX3IVPROC glad_glVertex3iv = NULL; -PFNGLVERTEX3SPROC glad_glVertex3s = NULL; -PFNGLVERTEX3SVPROC glad_glVertex3sv = NULL; -PFNGLVERTEX4DPROC glad_glVertex4d = NULL; -PFNGLVERTEX4DVPROC glad_glVertex4dv = NULL; -PFNGLVERTEX4FPROC glad_glVertex4f = NULL; -PFNGLVERTEX4FVPROC glad_glVertex4fv = NULL; -PFNGLVERTEX4IPROC glad_glVertex4i = NULL; -PFNGLVERTEX4IVPROC glad_glVertex4iv = NULL; -PFNGLVERTEX4SPROC glad_glVertex4s = NULL; -PFNGLVERTEX4SVPROC glad_glVertex4sv = NULL; -PFNGLVERTEXATTRIB1DPROC glad_glVertexAttrib1d = NULL; -PFNGLVERTEXATTRIB1DVPROC glad_glVertexAttrib1dv = NULL; -PFNGLVERTEXATTRIB1FPROC glad_glVertexAttrib1f = NULL; -PFNGLVERTEXATTRIB1FVPROC glad_glVertexAttrib1fv = NULL; -PFNGLVERTEXATTRIB1SPROC glad_glVertexAttrib1s = NULL; -PFNGLVERTEXATTRIB1SVPROC glad_glVertexAttrib1sv = NULL; -PFNGLVERTEXATTRIB2DPROC glad_glVertexAttrib2d = NULL; -PFNGLVERTEXATTRIB2DVPROC glad_glVertexAttrib2dv = NULL; -PFNGLVERTEXATTRIB2FPROC glad_glVertexAttrib2f = NULL; -PFNGLVERTEXATTRIB2FVPROC glad_glVertexAttrib2fv = NULL; -PFNGLVERTEXATTRIB2SPROC glad_glVertexAttrib2s = NULL; -PFNGLVERTEXATTRIB2SVPROC glad_glVertexAttrib2sv = NULL; -PFNGLVERTEXATTRIB3DPROC glad_glVertexAttrib3d = NULL; -PFNGLVERTEXATTRIB3DVPROC glad_glVertexAttrib3dv = NULL; -PFNGLVERTEXATTRIB3FPROC glad_glVertexAttrib3f = NULL; -PFNGLVERTEXATTRIB3FVPROC glad_glVertexAttrib3fv = NULL; -PFNGLVERTEXATTRIB3SPROC glad_glVertexAttrib3s = NULL; -PFNGLVERTEXATTRIB3SVPROC glad_glVertexAttrib3sv = NULL; -PFNGLVERTEXATTRIB4NBVPROC glad_glVertexAttrib4Nbv = NULL; -PFNGLVERTEXATTRIB4NIVPROC glad_glVertexAttrib4Niv = NULL; -PFNGLVERTEXATTRIB4NSVPROC glad_glVertexAttrib4Nsv = NULL; -PFNGLVERTEXATTRIB4NUBPROC glad_glVertexAttrib4Nub = NULL; -PFNGLVERTEXATTRIB4NUBVPROC glad_glVertexAttrib4Nubv = NULL; -PFNGLVERTEXATTRIB4NUIVPROC glad_glVertexAttrib4Nuiv = NULL; -PFNGLVERTEXATTRIB4NUSVPROC glad_glVertexAttrib4Nusv = NULL; -PFNGLVERTEXATTRIB4BVPROC glad_glVertexAttrib4bv = NULL; -PFNGLVERTEXATTRIB4DPROC glad_glVertexAttrib4d = NULL; -PFNGLVERTEXATTRIB4DVPROC glad_glVertexAttrib4dv = NULL; -PFNGLVERTEXATTRIB4FPROC glad_glVertexAttrib4f = NULL; -PFNGLVERTEXATTRIB4FVPROC glad_glVertexAttrib4fv = NULL; -PFNGLVERTEXATTRIB4IVPROC glad_glVertexAttrib4iv = NULL; -PFNGLVERTEXATTRIB4SPROC glad_glVertexAttrib4s = NULL; -PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv = NULL; -PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv = NULL; -PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv = NULL; -PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv = NULL; -PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor = NULL; -PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i = NULL; -PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv = NULL; -PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui = NULL; -PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv = NULL; -PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i = NULL; -PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv = NULL; -PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui = NULL; -PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv = NULL; -PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i = NULL; -PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv = NULL; -PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui = NULL; -PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv = NULL; -PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv = NULL; -PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i = NULL; -PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv = NULL; -PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv = NULL; -PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv = NULL; -PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui = NULL; -PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv = NULL; -PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv = NULL; -PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer = NULL; -PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui = NULL; -PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv = NULL; -PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui = NULL; -PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv = NULL; -PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui = NULL; -PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv = NULL; -PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui = NULL; -PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv = NULL; -PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer = NULL; -PFNGLVERTEXP2UIPROC glad_glVertexP2ui = NULL; -PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv = NULL; -PFNGLVERTEXP3UIPROC glad_glVertexP3ui = NULL; -PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv = NULL; -PFNGLVERTEXP4UIPROC glad_glVertexP4ui = NULL; -PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv = NULL; -PFNGLVERTEXPOINTERPROC glad_glVertexPointer = NULL; -PFNGLVIEWPORTPROC glad_glViewport = NULL; -PFNGLWAITSYNCPROC glad_glWaitSync = NULL; -PFNGLWINDOWPOS2DPROC glad_glWindowPos2d = NULL; -PFNGLWINDOWPOS2DVPROC glad_glWindowPos2dv = NULL; -PFNGLWINDOWPOS2FPROC glad_glWindowPos2f = NULL; -PFNGLWINDOWPOS2FVPROC glad_glWindowPos2fv = NULL; -PFNGLWINDOWPOS2IPROC glad_glWindowPos2i = NULL; -PFNGLWINDOWPOS2IVPROC glad_glWindowPos2iv = NULL; -PFNGLWINDOWPOS2SPROC glad_glWindowPos2s = NULL; -PFNGLWINDOWPOS2SVPROC glad_glWindowPos2sv = NULL; -PFNGLWINDOWPOS3DPROC glad_glWindowPos3d = NULL; -PFNGLWINDOWPOS3DVPROC glad_glWindowPos3dv = NULL; -PFNGLWINDOWPOS3FPROC glad_glWindowPos3f = NULL; -PFNGLWINDOWPOS3FVPROC glad_glWindowPos3fv = NULL; -PFNGLWINDOWPOS3IPROC glad_glWindowPos3i = NULL; -PFNGLWINDOWPOS3IVPROC glad_glWindowPos3iv = NULL; -PFNGLWINDOWPOS3SPROC glad_glWindowPos3s = NULL; -PFNGLWINDOWPOS3SVPROC glad_glWindowPos3sv = NULL; -static void load_GL_VERSION_1_0(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_0) return; - glad_glCullFace = (PFNGLCULLFACEPROC)load("glCullFace"); - glad_glFrontFace = (PFNGLFRONTFACEPROC)load("glFrontFace"); - glad_glHint = (PFNGLHINTPROC)load("glHint"); - glad_glLineWidth = (PFNGLLINEWIDTHPROC)load("glLineWidth"); - glad_glPointSize = (PFNGLPOINTSIZEPROC)load("glPointSize"); - glad_glPolygonMode = (PFNGLPOLYGONMODEPROC)load("glPolygonMode"); - glad_glScissor = (PFNGLSCISSORPROC)load("glScissor"); - glad_glTexParameterf = (PFNGLTEXPARAMETERFPROC)load("glTexParameterf"); - glad_glTexParameterfv = (PFNGLTEXPARAMETERFVPROC)load("glTexParameterfv"); - glad_glTexParameteri = (PFNGLTEXPARAMETERIPROC)load("glTexParameteri"); - glad_glTexParameteriv = (PFNGLTEXPARAMETERIVPROC)load("glTexParameteriv"); - glad_glTexImage1D = (PFNGLTEXIMAGE1DPROC)load("glTexImage1D"); - glad_glTexImage2D = (PFNGLTEXIMAGE2DPROC)load("glTexImage2D"); - glad_glDrawBuffer = (PFNGLDRAWBUFFERPROC)load("glDrawBuffer"); - glad_glClear = (PFNGLCLEARPROC)load("glClear"); - glad_glClearColor = (PFNGLCLEARCOLORPROC)load("glClearColor"); - glad_glClearStencil = (PFNGLCLEARSTENCILPROC)load("glClearStencil"); - glad_glClearDepth = (PFNGLCLEARDEPTHPROC)load("glClearDepth"); - glad_glStencilMask = (PFNGLSTENCILMASKPROC)load("glStencilMask"); - glad_glColorMask = (PFNGLCOLORMASKPROC)load("glColorMask"); - glad_glDepthMask = (PFNGLDEPTHMASKPROC)load("glDepthMask"); - glad_glDisable = (PFNGLDISABLEPROC)load("glDisable"); - glad_glEnable = (PFNGLENABLEPROC)load("glEnable"); - glad_glFinish = (PFNGLFINISHPROC)load("glFinish"); - glad_glFlush = (PFNGLFLUSHPROC)load("glFlush"); - glad_glBlendFunc = (PFNGLBLENDFUNCPROC)load("glBlendFunc"); - glad_glLogicOp = (PFNGLLOGICOPPROC)load("glLogicOp"); - glad_glStencilFunc = (PFNGLSTENCILFUNCPROC)load("glStencilFunc"); - glad_glStencilOp = (PFNGLSTENCILOPPROC)load("glStencilOp"); - glad_glDepthFunc = (PFNGLDEPTHFUNCPROC)load("glDepthFunc"); - glad_glPixelStoref = (PFNGLPIXELSTOREFPROC)load("glPixelStoref"); - glad_glPixelStorei = (PFNGLPIXELSTOREIPROC)load("glPixelStorei"); - glad_glReadBuffer = (PFNGLREADBUFFERPROC)load("glReadBuffer"); - glad_glReadPixels = (PFNGLREADPIXELSPROC)load("glReadPixels"); - glad_glGetBooleanv = (PFNGLGETBOOLEANVPROC)load("glGetBooleanv"); - glad_glGetDoublev = (PFNGLGETDOUBLEVPROC)load("glGetDoublev"); - glad_glGetError = (PFNGLGETERRORPROC)load("glGetError"); - glad_glGetFloatv = (PFNGLGETFLOATVPROC)load("glGetFloatv"); - glad_glGetIntegerv = (PFNGLGETINTEGERVPROC)load("glGetIntegerv"); - glad_glGetString = (PFNGLGETSTRINGPROC)load("glGetString"); - glad_glGetTexImage = (PFNGLGETTEXIMAGEPROC)load("glGetTexImage"); - glad_glGetTexParameterfv = (PFNGLGETTEXPARAMETERFVPROC)load("glGetTexParameterfv"); - glad_glGetTexParameteriv = (PFNGLGETTEXPARAMETERIVPROC)load("glGetTexParameteriv"); - glad_glGetTexLevelParameterfv = (PFNGLGETTEXLEVELPARAMETERFVPROC)load("glGetTexLevelParameterfv"); - glad_glGetTexLevelParameteriv = (PFNGLGETTEXLEVELPARAMETERIVPROC)load("glGetTexLevelParameteriv"); - glad_glIsEnabled = (PFNGLISENABLEDPROC)load("glIsEnabled"); - glad_glDepthRange = (PFNGLDEPTHRANGEPROC)load("glDepthRange"); - glad_glViewport = (PFNGLVIEWPORTPROC)load("glViewport"); - glad_glNewList = (PFNGLNEWLISTPROC)load("glNewList"); - glad_glEndList = (PFNGLENDLISTPROC)load("glEndList"); - glad_glCallList = (PFNGLCALLLISTPROC)load("glCallList"); - glad_glCallLists = (PFNGLCALLLISTSPROC)load("glCallLists"); - glad_glDeleteLists = (PFNGLDELETELISTSPROC)load("glDeleteLists"); - glad_glGenLists = (PFNGLGENLISTSPROC)load("glGenLists"); - glad_glListBase = (PFNGLLISTBASEPROC)load("glListBase"); - glad_glBegin = (PFNGLBEGINPROC)load("glBegin"); - glad_glBitmap = (PFNGLBITMAPPROC)load("glBitmap"); - glad_glColor3b = (PFNGLCOLOR3BPROC)load("glColor3b"); - glad_glColor3bv = (PFNGLCOLOR3BVPROC)load("glColor3bv"); - glad_glColor3d = (PFNGLCOLOR3DPROC)load("glColor3d"); - glad_glColor3dv = (PFNGLCOLOR3DVPROC)load("glColor3dv"); - glad_glColor3f = (PFNGLCOLOR3FPROC)load("glColor3f"); - glad_glColor3fv = (PFNGLCOLOR3FVPROC)load("glColor3fv"); - glad_glColor3i = (PFNGLCOLOR3IPROC)load("glColor3i"); - glad_glColor3iv = (PFNGLCOLOR3IVPROC)load("glColor3iv"); - glad_glColor3s = (PFNGLCOLOR3SPROC)load("glColor3s"); - glad_glColor3sv = (PFNGLCOLOR3SVPROC)load("glColor3sv"); - glad_glColor3ub = (PFNGLCOLOR3UBPROC)load("glColor3ub"); - glad_glColor3ubv = (PFNGLCOLOR3UBVPROC)load("glColor3ubv"); - glad_glColor3ui = (PFNGLCOLOR3UIPROC)load("glColor3ui"); - glad_glColor3uiv = (PFNGLCOLOR3UIVPROC)load("glColor3uiv"); - glad_glColor3us = (PFNGLCOLOR3USPROC)load("glColor3us"); - glad_glColor3usv = (PFNGLCOLOR3USVPROC)load("glColor3usv"); - glad_glColor4b = (PFNGLCOLOR4BPROC)load("glColor4b"); - glad_glColor4bv = (PFNGLCOLOR4BVPROC)load("glColor4bv"); - glad_glColor4d = (PFNGLCOLOR4DPROC)load("glColor4d"); - glad_glColor4dv = (PFNGLCOLOR4DVPROC)load("glColor4dv"); - glad_glColor4f = (PFNGLCOLOR4FPROC)load("glColor4f"); - glad_glColor4fv = (PFNGLCOLOR4FVPROC)load("glColor4fv"); - glad_glColor4i = (PFNGLCOLOR4IPROC)load("glColor4i"); - glad_glColor4iv = (PFNGLCOLOR4IVPROC)load("glColor4iv"); - glad_glColor4s = (PFNGLCOLOR4SPROC)load("glColor4s"); - glad_glColor4sv = (PFNGLCOLOR4SVPROC)load("glColor4sv"); - glad_glColor4ub = (PFNGLCOLOR4UBPROC)load("glColor4ub"); - glad_glColor4ubv = (PFNGLCOLOR4UBVPROC)load("glColor4ubv"); - glad_glColor4ui = (PFNGLCOLOR4UIPROC)load("glColor4ui"); - glad_glColor4uiv = (PFNGLCOLOR4UIVPROC)load("glColor4uiv"); - glad_glColor4us = (PFNGLCOLOR4USPROC)load("glColor4us"); - glad_glColor4usv = (PFNGLCOLOR4USVPROC)load("glColor4usv"); - glad_glEdgeFlag = (PFNGLEDGEFLAGPROC)load("glEdgeFlag"); - glad_glEdgeFlagv = (PFNGLEDGEFLAGVPROC)load("glEdgeFlagv"); - glad_glEnd = (PFNGLENDPROC)load("glEnd"); - glad_glIndexd = (PFNGLINDEXDPROC)load("glIndexd"); - glad_glIndexdv = (PFNGLINDEXDVPROC)load("glIndexdv"); - glad_glIndexf = (PFNGLINDEXFPROC)load("glIndexf"); - glad_glIndexfv = (PFNGLINDEXFVPROC)load("glIndexfv"); - glad_glIndexi = (PFNGLINDEXIPROC)load("glIndexi"); - glad_glIndexiv = (PFNGLINDEXIVPROC)load("glIndexiv"); - glad_glIndexs = (PFNGLINDEXSPROC)load("glIndexs"); - glad_glIndexsv = (PFNGLINDEXSVPROC)load("glIndexsv"); - glad_glNormal3b = (PFNGLNORMAL3BPROC)load("glNormal3b"); - glad_glNormal3bv = (PFNGLNORMAL3BVPROC)load("glNormal3bv"); - glad_glNormal3d = (PFNGLNORMAL3DPROC)load("glNormal3d"); - glad_glNormal3dv = (PFNGLNORMAL3DVPROC)load("glNormal3dv"); - glad_glNormal3f = (PFNGLNORMAL3FPROC)load("glNormal3f"); - glad_glNormal3fv = (PFNGLNORMAL3FVPROC)load("glNormal3fv"); - glad_glNormal3i = (PFNGLNORMAL3IPROC)load("glNormal3i"); - glad_glNormal3iv = (PFNGLNORMAL3IVPROC)load("glNormal3iv"); - glad_glNormal3s = (PFNGLNORMAL3SPROC)load("glNormal3s"); - glad_glNormal3sv = (PFNGLNORMAL3SVPROC)load("glNormal3sv"); - glad_glRasterPos2d = (PFNGLRASTERPOS2DPROC)load("glRasterPos2d"); - glad_glRasterPos2dv = (PFNGLRASTERPOS2DVPROC)load("glRasterPos2dv"); - glad_glRasterPos2f = (PFNGLRASTERPOS2FPROC)load("glRasterPos2f"); - glad_glRasterPos2fv = (PFNGLRASTERPOS2FVPROC)load("glRasterPos2fv"); - glad_glRasterPos2i = (PFNGLRASTERPOS2IPROC)load("glRasterPos2i"); - glad_glRasterPos2iv = (PFNGLRASTERPOS2IVPROC)load("glRasterPos2iv"); - glad_glRasterPos2s = (PFNGLRASTERPOS2SPROC)load("glRasterPos2s"); - glad_glRasterPos2sv = (PFNGLRASTERPOS2SVPROC)load("glRasterPos2sv"); - glad_glRasterPos3d = (PFNGLRASTERPOS3DPROC)load("glRasterPos3d"); - glad_glRasterPos3dv = (PFNGLRASTERPOS3DVPROC)load("glRasterPos3dv"); - glad_glRasterPos3f = (PFNGLRASTERPOS3FPROC)load("glRasterPos3f"); - glad_glRasterPos3fv = (PFNGLRASTERPOS3FVPROC)load("glRasterPos3fv"); - glad_glRasterPos3i = (PFNGLRASTERPOS3IPROC)load("glRasterPos3i"); - glad_glRasterPos3iv = (PFNGLRASTERPOS3IVPROC)load("glRasterPos3iv"); - glad_glRasterPos3s = (PFNGLRASTERPOS3SPROC)load("glRasterPos3s"); - glad_glRasterPos3sv = (PFNGLRASTERPOS3SVPROC)load("glRasterPos3sv"); - glad_glRasterPos4d = (PFNGLRASTERPOS4DPROC)load("glRasterPos4d"); - glad_glRasterPos4dv = (PFNGLRASTERPOS4DVPROC)load("glRasterPos4dv"); - glad_glRasterPos4f = (PFNGLRASTERPOS4FPROC)load("glRasterPos4f"); - glad_glRasterPos4fv = (PFNGLRASTERPOS4FVPROC)load("glRasterPos4fv"); - glad_glRasterPos4i = (PFNGLRASTERPOS4IPROC)load("glRasterPos4i"); - glad_glRasterPos4iv = (PFNGLRASTERPOS4IVPROC)load("glRasterPos4iv"); - glad_glRasterPos4s = (PFNGLRASTERPOS4SPROC)load("glRasterPos4s"); - glad_glRasterPos4sv = (PFNGLRASTERPOS4SVPROC)load("glRasterPos4sv"); - glad_glRectd = (PFNGLRECTDPROC)load("glRectd"); - glad_glRectdv = (PFNGLRECTDVPROC)load("glRectdv"); - glad_glRectf = (PFNGLRECTFPROC)load("glRectf"); - glad_glRectfv = (PFNGLRECTFVPROC)load("glRectfv"); - glad_glRecti = (PFNGLRECTIPROC)load("glRecti"); - glad_glRectiv = (PFNGLRECTIVPROC)load("glRectiv"); - glad_glRects = (PFNGLRECTSPROC)load("glRects"); - glad_glRectsv = (PFNGLRECTSVPROC)load("glRectsv"); - glad_glTexCoord1d = (PFNGLTEXCOORD1DPROC)load("glTexCoord1d"); - glad_glTexCoord1dv = (PFNGLTEXCOORD1DVPROC)load("glTexCoord1dv"); - glad_glTexCoord1f = (PFNGLTEXCOORD1FPROC)load("glTexCoord1f"); - glad_glTexCoord1fv = (PFNGLTEXCOORD1FVPROC)load("glTexCoord1fv"); - glad_glTexCoord1i = (PFNGLTEXCOORD1IPROC)load("glTexCoord1i"); - glad_glTexCoord1iv = (PFNGLTEXCOORD1IVPROC)load("glTexCoord1iv"); - glad_glTexCoord1s = (PFNGLTEXCOORD1SPROC)load("glTexCoord1s"); - glad_glTexCoord1sv = (PFNGLTEXCOORD1SVPROC)load("glTexCoord1sv"); - glad_glTexCoord2d = (PFNGLTEXCOORD2DPROC)load("glTexCoord2d"); - glad_glTexCoord2dv = (PFNGLTEXCOORD2DVPROC)load("glTexCoord2dv"); - glad_glTexCoord2f = (PFNGLTEXCOORD2FPROC)load("glTexCoord2f"); - glad_glTexCoord2fv = (PFNGLTEXCOORD2FVPROC)load("glTexCoord2fv"); - glad_glTexCoord2i = (PFNGLTEXCOORD2IPROC)load("glTexCoord2i"); - glad_glTexCoord2iv = (PFNGLTEXCOORD2IVPROC)load("glTexCoord2iv"); - glad_glTexCoord2s = (PFNGLTEXCOORD2SPROC)load("glTexCoord2s"); - glad_glTexCoord2sv = (PFNGLTEXCOORD2SVPROC)load("glTexCoord2sv"); - glad_glTexCoord3d = (PFNGLTEXCOORD3DPROC)load("glTexCoord3d"); - glad_glTexCoord3dv = (PFNGLTEXCOORD3DVPROC)load("glTexCoord3dv"); - glad_glTexCoord3f = (PFNGLTEXCOORD3FPROC)load("glTexCoord3f"); - glad_glTexCoord3fv = (PFNGLTEXCOORD3FVPROC)load("glTexCoord3fv"); - glad_glTexCoord3i = (PFNGLTEXCOORD3IPROC)load("glTexCoord3i"); - glad_glTexCoord3iv = (PFNGLTEXCOORD3IVPROC)load("glTexCoord3iv"); - glad_glTexCoord3s = (PFNGLTEXCOORD3SPROC)load("glTexCoord3s"); - glad_glTexCoord3sv = (PFNGLTEXCOORD3SVPROC)load("glTexCoord3sv"); - glad_glTexCoord4d = (PFNGLTEXCOORD4DPROC)load("glTexCoord4d"); - glad_glTexCoord4dv = (PFNGLTEXCOORD4DVPROC)load("glTexCoord4dv"); - glad_glTexCoord4f = (PFNGLTEXCOORD4FPROC)load("glTexCoord4f"); - glad_glTexCoord4fv = (PFNGLTEXCOORD4FVPROC)load("glTexCoord4fv"); - glad_glTexCoord4i = (PFNGLTEXCOORD4IPROC)load("glTexCoord4i"); - glad_glTexCoord4iv = (PFNGLTEXCOORD4IVPROC)load("glTexCoord4iv"); - glad_glTexCoord4s = (PFNGLTEXCOORD4SPROC)load("glTexCoord4s"); - glad_glTexCoord4sv = (PFNGLTEXCOORD4SVPROC)load("glTexCoord4sv"); - glad_glVertex2d = (PFNGLVERTEX2DPROC)load("glVertex2d"); - glad_glVertex2dv = (PFNGLVERTEX2DVPROC)load("glVertex2dv"); - glad_glVertex2f = (PFNGLVERTEX2FPROC)load("glVertex2f"); - glad_glVertex2fv = (PFNGLVERTEX2FVPROC)load("glVertex2fv"); - glad_glVertex2i = (PFNGLVERTEX2IPROC)load("glVertex2i"); - glad_glVertex2iv = (PFNGLVERTEX2IVPROC)load("glVertex2iv"); - glad_glVertex2s = (PFNGLVERTEX2SPROC)load("glVertex2s"); - glad_glVertex2sv = (PFNGLVERTEX2SVPROC)load("glVertex2sv"); - glad_glVertex3d = (PFNGLVERTEX3DPROC)load("glVertex3d"); - glad_glVertex3dv = (PFNGLVERTEX3DVPROC)load("glVertex3dv"); - glad_glVertex3f = (PFNGLVERTEX3FPROC)load("glVertex3f"); - glad_glVertex3fv = (PFNGLVERTEX3FVPROC)load("glVertex3fv"); - glad_glVertex3i = (PFNGLVERTEX3IPROC)load("glVertex3i"); - glad_glVertex3iv = (PFNGLVERTEX3IVPROC)load("glVertex3iv"); - glad_glVertex3s = (PFNGLVERTEX3SPROC)load("glVertex3s"); - glad_glVertex3sv = (PFNGLVERTEX3SVPROC)load("glVertex3sv"); - glad_glVertex4d = (PFNGLVERTEX4DPROC)load("glVertex4d"); - glad_glVertex4dv = (PFNGLVERTEX4DVPROC)load("glVertex4dv"); - glad_glVertex4f = (PFNGLVERTEX4FPROC)load("glVertex4f"); - glad_glVertex4fv = (PFNGLVERTEX4FVPROC)load("glVertex4fv"); - glad_glVertex4i = (PFNGLVERTEX4IPROC)load("glVertex4i"); - glad_glVertex4iv = (PFNGLVERTEX4IVPROC)load("glVertex4iv"); - glad_glVertex4s = (PFNGLVERTEX4SPROC)load("glVertex4s"); - glad_glVertex4sv = (PFNGLVERTEX4SVPROC)load("glVertex4sv"); - glad_glClipPlane = (PFNGLCLIPPLANEPROC)load("glClipPlane"); - glad_glColorMaterial = (PFNGLCOLORMATERIALPROC)load("glColorMaterial"); - glad_glFogf = (PFNGLFOGFPROC)load("glFogf"); - glad_glFogfv = (PFNGLFOGFVPROC)load("glFogfv"); - glad_glFogi = (PFNGLFOGIPROC)load("glFogi"); - glad_glFogiv = (PFNGLFOGIVPROC)load("glFogiv"); - glad_glLightf = (PFNGLLIGHTFPROC)load("glLightf"); - glad_glLightfv = (PFNGLLIGHTFVPROC)load("glLightfv"); - glad_glLighti = (PFNGLLIGHTIPROC)load("glLighti"); - glad_glLightiv = (PFNGLLIGHTIVPROC)load("glLightiv"); - glad_glLightModelf = (PFNGLLIGHTMODELFPROC)load("glLightModelf"); - glad_glLightModelfv = (PFNGLLIGHTMODELFVPROC)load("glLightModelfv"); - glad_glLightModeli = (PFNGLLIGHTMODELIPROC)load("glLightModeli"); - glad_glLightModeliv = (PFNGLLIGHTMODELIVPROC)load("glLightModeliv"); - glad_glLineStipple = (PFNGLLINESTIPPLEPROC)load("glLineStipple"); - glad_glMaterialf = (PFNGLMATERIALFPROC)load("glMaterialf"); - glad_glMaterialfv = (PFNGLMATERIALFVPROC)load("glMaterialfv"); - glad_glMateriali = (PFNGLMATERIALIPROC)load("glMateriali"); - glad_glMaterialiv = (PFNGLMATERIALIVPROC)load("glMaterialiv"); - glad_glPolygonStipple = (PFNGLPOLYGONSTIPPLEPROC)load("glPolygonStipple"); - glad_glShadeModel = (PFNGLSHADEMODELPROC)load("glShadeModel"); - glad_glTexEnvf = (PFNGLTEXENVFPROC)load("glTexEnvf"); - glad_glTexEnvfv = (PFNGLTEXENVFVPROC)load("glTexEnvfv"); - glad_glTexEnvi = (PFNGLTEXENVIPROC)load("glTexEnvi"); - glad_glTexEnviv = (PFNGLTEXENVIVPROC)load("glTexEnviv"); - glad_glTexGend = (PFNGLTEXGENDPROC)load("glTexGend"); - glad_glTexGendv = (PFNGLTEXGENDVPROC)load("glTexGendv"); - glad_glTexGenf = (PFNGLTEXGENFPROC)load("glTexGenf"); - glad_glTexGenfv = (PFNGLTEXGENFVPROC)load("glTexGenfv"); - glad_glTexGeni = (PFNGLTEXGENIPROC)load("glTexGeni"); - glad_glTexGeniv = (PFNGLTEXGENIVPROC)load("glTexGeniv"); - glad_glFeedbackBuffer = (PFNGLFEEDBACKBUFFERPROC)load("glFeedbackBuffer"); - glad_glSelectBuffer = (PFNGLSELECTBUFFERPROC)load("glSelectBuffer"); - glad_glRenderMode = (PFNGLRENDERMODEPROC)load("glRenderMode"); - glad_glInitNames = (PFNGLINITNAMESPROC)load("glInitNames"); - glad_glLoadName = (PFNGLLOADNAMEPROC)load("glLoadName"); - glad_glPassThrough = (PFNGLPASSTHROUGHPROC)load("glPassThrough"); - glad_glPopName = (PFNGLPOPNAMEPROC)load("glPopName"); - glad_glPushName = (PFNGLPUSHNAMEPROC)load("glPushName"); - glad_glClearAccum = (PFNGLCLEARACCUMPROC)load("glClearAccum"); - glad_glClearIndex = (PFNGLCLEARINDEXPROC)load("glClearIndex"); - glad_glIndexMask = (PFNGLINDEXMASKPROC)load("glIndexMask"); - glad_glAccum = (PFNGLACCUMPROC)load("glAccum"); - glad_glPopAttrib = (PFNGLPOPATTRIBPROC)load("glPopAttrib"); - glad_glPushAttrib = (PFNGLPUSHATTRIBPROC)load("glPushAttrib"); - glad_glMap1d = (PFNGLMAP1DPROC)load("glMap1d"); - glad_glMap1f = (PFNGLMAP1FPROC)load("glMap1f"); - glad_glMap2d = (PFNGLMAP2DPROC)load("glMap2d"); - glad_glMap2f = (PFNGLMAP2FPROC)load("glMap2f"); - glad_glMapGrid1d = (PFNGLMAPGRID1DPROC)load("glMapGrid1d"); - glad_glMapGrid1f = (PFNGLMAPGRID1FPROC)load("glMapGrid1f"); - glad_glMapGrid2d = (PFNGLMAPGRID2DPROC)load("glMapGrid2d"); - glad_glMapGrid2f = (PFNGLMAPGRID2FPROC)load("glMapGrid2f"); - glad_glEvalCoord1d = (PFNGLEVALCOORD1DPROC)load("glEvalCoord1d"); - glad_glEvalCoord1dv = (PFNGLEVALCOORD1DVPROC)load("glEvalCoord1dv"); - glad_glEvalCoord1f = (PFNGLEVALCOORD1FPROC)load("glEvalCoord1f"); - glad_glEvalCoord1fv = (PFNGLEVALCOORD1FVPROC)load("glEvalCoord1fv"); - glad_glEvalCoord2d = (PFNGLEVALCOORD2DPROC)load("glEvalCoord2d"); - glad_glEvalCoord2dv = (PFNGLEVALCOORD2DVPROC)load("glEvalCoord2dv"); - glad_glEvalCoord2f = (PFNGLEVALCOORD2FPROC)load("glEvalCoord2f"); - glad_glEvalCoord2fv = (PFNGLEVALCOORD2FVPROC)load("glEvalCoord2fv"); - glad_glEvalMesh1 = (PFNGLEVALMESH1PROC)load("glEvalMesh1"); - glad_glEvalPoint1 = (PFNGLEVALPOINT1PROC)load("glEvalPoint1"); - glad_glEvalMesh2 = (PFNGLEVALMESH2PROC)load("glEvalMesh2"); - glad_glEvalPoint2 = (PFNGLEVALPOINT2PROC)load("glEvalPoint2"); - glad_glAlphaFunc = (PFNGLALPHAFUNCPROC)load("glAlphaFunc"); - glad_glPixelZoom = (PFNGLPIXELZOOMPROC)load("glPixelZoom"); - glad_glPixelTransferf = (PFNGLPIXELTRANSFERFPROC)load("glPixelTransferf"); - glad_glPixelTransferi = (PFNGLPIXELTRANSFERIPROC)load("glPixelTransferi"); - glad_glPixelMapfv = (PFNGLPIXELMAPFVPROC)load("glPixelMapfv"); - glad_glPixelMapuiv = (PFNGLPIXELMAPUIVPROC)load("glPixelMapuiv"); - glad_glPixelMapusv = (PFNGLPIXELMAPUSVPROC)load("glPixelMapusv"); - glad_glCopyPixels = (PFNGLCOPYPIXELSPROC)load("glCopyPixels"); - glad_glDrawPixels = (PFNGLDRAWPIXELSPROC)load("glDrawPixels"); - glad_glGetClipPlane = (PFNGLGETCLIPPLANEPROC)load("glGetClipPlane"); - glad_glGetLightfv = (PFNGLGETLIGHTFVPROC)load("glGetLightfv"); - glad_glGetLightiv = (PFNGLGETLIGHTIVPROC)load("glGetLightiv"); - glad_glGetMapdv = (PFNGLGETMAPDVPROC)load("glGetMapdv"); - glad_glGetMapfv = (PFNGLGETMAPFVPROC)load("glGetMapfv"); - glad_glGetMapiv = (PFNGLGETMAPIVPROC)load("glGetMapiv"); - glad_glGetMaterialfv = (PFNGLGETMATERIALFVPROC)load("glGetMaterialfv"); - glad_glGetMaterialiv = (PFNGLGETMATERIALIVPROC)load("glGetMaterialiv"); - glad_glGetPixelMapfv = (PFNGLGETPIXELMAPFVPROC)load("glGetPixelMapfv"); - glad_glGetPixelMapuiv = (PFNGLGETPIXELMAPUIVPROC)load("glGetPixelMapuiv"); - glad_glGetPixelMapusv = (PFNGLGETPIXELMAPUSVPROC)load("glGetPixelMapusv"); - glad_glGetPolygonStipple = (PFNGLGETPOLYGONSTIPPLEPROC)load("glGetPolygonStipple"); - glad_glGetTexEnvfv = (PFNGLGETTEXENVFVPROC)load("glGetTexEnvfv"); - glad_glGetTexEnviv = (PFNGLGETTEXENVIVPROC)load("glGetTexEnviv"); - glad_glGetTexGendv = (PFNGLGETTEXGENDVPROC)load("glGetTexGendv"); - glad_glGetTexGenfv = (PFNGLGETTEXGENFVPROC)load("glGetTexGenfv"); - glad_glGetTexGeniv = (PFNGLGETTEXGENIVPROC)load("glGetTexGeniv"); - glad_glIsList = (PFNGLISLISTPROC)load("glIsList"); - glad_glFrustum = (PFNGLFRUSTUMPROC)load("glFrustum"); - glad_glLoadIdentity = (PFNGLLOADIDENTITYPROC)load("glLoadIdentity"); - glad_glLoadMatrixf = (PFNGLLOADMATRIXFPROC)load("glLoadMatrixf"); - glad_glLoadMatrixd = (PFNGLLOADMATRIXDPROC)load("glLoadMatrixd"); - glad_glMatrixMode = (PFNGLMATRIXMODEPROC)load("glMatrixMode"); - glad_glMultMatrixf = (PFNGLMULTMATRIXFPROC)load("glMultMatrixf"); - glad_glMultMatrixd = (PFNGLMULTMATRIXDPROC)load("glMultMatrixd"); - glad_glOrtho = (PFNGLORTHOPROC)load("glOrtho"); - glad_glPopMatrix = (PFNGLPOPMATRIXPROC)load("glPopMatrix"); - glad_glPushMatrix = (PFNGLPUSHMATRIXPROC)load("glPushMatrix"); - glad_glRotated = (PFNGLROTATEDPROC)load("glRotated"); - glad_glRotatef = (PFNGLROTATEFPROC)load("glRotatef"); - glad_glScaled = (PFNGLSCALEDPROC)load("glScaled"); - glad_glScalef = (PFNGLSCALEFPROC)load("glScalef"); - glad_glTranslated = (PFNGLTRANSLATEDPROC)load("glTranslated"); - glad_glTranslatef = (PFNGLTRANSLATEFPROC)load("glTranslatef"); -} -static void load_GL_VERSION_1_1(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_1) return; - glad_glDrawArrays = (PFNGLDRAWARRAYSPROC)load("glDrawArrays"); - glad_glDrawElements = (PFNGLDRAWELEMENTSPROC)load("glDrawElements"); - glad_glGetPointerv = (PFNGLGETPOINTERVPROC)load("glGetPointerv"); - glad_glPolygonOffset = (PFNGLPOLYGONOFFSETPROC)load("glPolygonOffset"); - glad_glCopyTexImage1D = (PFNGLCOPYTEXIMAGE1DPROC)load("glCopyTexImage1D"); - glad_glCopyTexImage2D = (PFNGLCOPYTEXIMAGE2DPROC)load("glCopyTexImage2D"); - glad_glCopyTexSubImage1D = (PFNGLCOPYTEXSUBIMAGE1DPROC)load("glCopyTexSubImage1D"); - glad_glCopyTexSubImage2D = (PFNGLCOPYTEXSUBIMAGE2DPROC)load("glCopyTexSubImage2D"); - glad_glTexSubImage1D = (PFNGLTEXSUBIMAGE1DPROC)load("glTexSubImage1D"); - glad_glTexSubImage2D = (PFNGLTEXSUBIMAGE2DPROC)load("glTexSubImage2D"); - glad_glBindTexture = (PFNGLBINDTEXTUREPROC)load("glBindTexture"); - glad_glDeleteTextures = (PFNGLDELETETEXTURESPROC)load("glDeleteTextures"); - glad_glGenTextures = (PFNGLGENTEXTURESPROC)load("glGenTextures"); - glad_glIsTexture = (PFNGLISTEXTUREPROC)load("glIsTexture"); - glad_glArrayElement = (PFNGLARRAYELEMENTPROC)load("glArrayElement"); - glad_glColorPointer = (PFNGLCOLORPOINTERPROC)load("glColorPointer"); - glad_glDisableClientState = (PFNGLDISABLECLIENTSTATEPROC)load("glDisableClientState"); - glad_glEdgeFlagPointer = (PFNGLEDGEFLAGPOINTERPROC)load("glEdgeFlagPointer"); - glad_glEnableClientState = (PFNGLENABLECLIENTSTATEPROC)load("glEnableClientState"); - glad_glIndexPointer = (PFNGLINDEXPOINTERPROC)load("glIndexPointer"); - glad_glInterleavedArrays = (PFNGLINTERLEAVEDARRAYSPROC)load("glInterleavedArrays"); - glad_glNormalPointer = (PFNGLNORMALPOINTERPROC)load("glNormalPointer"); - glad_glTexCoordPointer = (PFNGLTEXCOORDPOINTERPROC)load("glTexCoordPointer"); - glad_glVertexPointer = (PFNGLVERTEXPOINTERPROC)load("glVertexPointer"); - glad_glAreTexturesResident = (PFNGLARETEXTURESRESIDENTPROC)load("glAreTexturesResident"); - glad_glPrioritizeTextures = (PFNGLPRIORITIZETEXTURESPROC)load("glPrioritizeTextures"); - glad_glIndexub = (PFNGLINDEXUBPROC)load("glIndexub"); - glad_glIndexubv = (PFNGLINDEXUBVPROC)load("glIndexubv"); - glad_glPopClientAttrib = (PFNGLPOPCLIENTATTRIBPROC)load("glPopClientAttrib"); - glad_glPushClientAttrib = (PFNGLPUSHCLIENTATTRIBPROC)load("glPushClientAttrib"); -} -static void load_GL_VERSION_1_2(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_2) return; - glad_glDrawRangeElements = (PFNGLDRAWRANGEELEMENTSPROC)load("glDrawRangeElements"); - glad_glTexImage3D = (PFNGLTEXIMAGE3DPROC)load("glTexImage3D"); - glad_glTexSubImage3D = (PFNGLTEXSUBIMAGE3DPROC)load("glTexSubImage3D"); - glad_glCopyTexSubImage3D = (PFNGLCOPYTEXSUBIMAGE3DPROC)load("glCopyTexSubImage3D"); -} -static void load_GL_VERSION_1_3(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_3) return; - glad_glActiveTexture = (PFNGLACTIVETEXTUREPROC)load("glActiveTexture"); - glad_glSampleCoverage = (PFNGLSAMPLECOVERAGEPROC)load("glSampleCoverage"); - glad_glCompressedTexImage3D = (PFNGLCOMPRESSEDTEXIMAGE3DPROC)load("glCompressedTexImage3D"); - glad_glCompressedTexImage2D = (PFNGLCOMPRESSEDTEXIMAGE2DPROC)load("glCompressedTexImage2D"); - glad_glCompressedTexImage1D = (PFNGLCOMPRESSEDTEXIMAGE1DPROC)load("glCompressedTexImage1D"); - glad_glCompressedTexSubImage3D = (PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)load("glCompressedTexSubImage3D"); - glad_glCompressedTexSubImage2D = (PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)load("glCompressedTexSubImage2D"); - glad_glCompressedTexSubImage1D = (PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)load("glCompressedTexSubImage1D"); - glad_glGetCompressedTexImage = (PFNGLGETCOMPRESSEDTEXIMAGEPROC)load("glGetCompressedTexImage"); - glad_glClientActiveTexture = (PFNGLCLIENTACTIVETEXTUREPROC)load("glClientActiveTexture"); - glad_glMultiTexCoord1d = (PFNGLMULTITEXCOORD1DPROC)load("glMultiTexCoord1d"); - glad_glMultiTexCoord1dv = (PFNGLMULTITEXCOORD1DVPROC)load("glMultiTexCoord1dv"); - glad_glMultiTexCoord1f = (PFNGLMULTITEXCOORD1FPROC)load("glMultiTexCoord1f"); - glad_glMultiTexCoord1fv = (PFNGLMULTITEXCOORD1FVPROC)load("glMultiTexCoord1fv"); - glad_glMultiTexCoord1i = (PFNGLMULTITEXCOORD1IPROC)load("glMultiTexCoord1i"); - glad_glMultiTexCoord1iv = (PFNGLMULTITEXCOORD1IVPROC)load("glMultiTexCoord1iv"); - glad_glMultiTexCoord1s = (PFNGLMULTITEXCOORD1SPROC)load("glMultiTexCoord1s"); - glad_glMultiTexCoord1sv = (PFNGLMULTITEXCOORD1SVPROC)load("glMultiTexCoord1sv"); - glad_glMultiTexCoord2d = (PFNGLMULTITEXCOORD2DPROC)load("glMultiTexCoord2d"); - glad_glMultiTexCoord2dv = (PFNGLMULTITEXCOORD2DVPROC)load("glMultiTexCoord2dv"); - glad_glMultiTexCoord2f = (PFNGLMULTITEXCOORD2FPROC)load("glMultiTexCoord2f"); - glad_glMultiTexCoord2fv = (PFNGLMULTITEXCOORD2FVPROC)load("glMultiTexCoord2fv"); - glad_glMultiTexCoord2i = (PFNGLMULTITEXCOORD2IPROC)load("glMultiTexCoord2i"); - glad_glMultiTexCoord2iv = (PFNGLMULTITEXCOORD2IVPROC)load("glMultiTexCoord2iv"); - glad_glMultiTexCoord2s = (PFNGLMULTITEXCOORD2SPROC)load("glMultiTexCoord2s"); - glad_glMultiTexCoord2sv = (PFNGLMULTITEXCOORD2SVPROC)load("glMultiTexCoord2sv"); - glad_glMultiTexCoord3d = (PFNGLMULTITEXCOORD3DPROC)load("glMultiTexCoord3d"); - glad_glMultiTexCoord3dv = (PFNGLMULTITEXCOORD3DVPROC)load("glMultiTexCoord3dv"); - glad_glMultiTexCoord3f = (PFNGLMULTITEXCOORD3FPROC)load("glMultiTexCoord3f"); - glad_glMultiTexCoord3fv = (PFNGLMULTITEXCOORD3FVPROC)load("glMultiTexCoord3fv"); - glad_glMultiTexCoord3i = (PFNGLMULTITEXCOORD3IPROC)load("glMultiTexCoord3i"); - glad_glMultiTexCoord3iv = (PFNGLMULTITEXCOORD3IVPROC)load("glMultiTexCoord3iv"); - glad_glMultiTexCoord3s = (PFNGLMULTITEXCOORD3SPROC)load("glMultiTexCoord3s"); - glad_glMultiTexCoord3sv = (PFNGLMULTITEXCOORD3SVPROC)load("glMultiTexCoord3sv"); - glad_glMultiTexCoord4d = (PFNGLMULTITEXCOORD4DPROC)load("glMultiTexCoord4d"); - glad_glMultiTexCoord4dv = (PFNGLMULTITEXCOORD4DVPROC)load("glMultiTexCoord4dv"); - glad_glMultiTexCoord4f = (PFNGLMULTITEXCOORD4FPROC)load("glMultiTexCoord4f"); - glad_glMultiTexCoord4fv = (PFNGLMULTITEXCOORD4FVPROC)load("glMultiTexCoord4fv"); - glad_glMultiTexCoord4i = (PFNGLMULTITEXCOORD4IPROC)load("glMultiTexCoord4i"); - glad_glMultiTexCoord4iv = (PFNGLMULTITEXCOORD4IVPROC)load("glMultiTexCoord4iv"); - glad_glMultiTexCoord4s = (PFNGLMULTITEXCOORD4SPROC)load("glMultiTexCoord4s"); - glad_glMultiTexCoord4sv = (PFNGLMULTITEXCOORD4SVPROC)load("glMultiTexCoord4sv"); - glad_glLoadTransposeMatrixf = (PFNGLLOADTRANSPOSEMATRIXFPROC)load("glLoadTransposeMatrixf"); - glad_glLoadTransposeMatrixd = (PFNGLLOADTRANSPOSEMATRIXDPROC)load("glLoadTransposeMatrixd"); - glad_glMultTransposeMatrixf = (PFNGLMULTTRANSPOSEMATRIXFPROC)load("glMultTransposeMatrixf"); - glad_glMultTransposeMatrixd = (PFNGLMULTTRANSPOSEMATRIXDPROC)load("glMultTransposeMatrixd"); -} -static void load_GL_VERSION_1_4(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_4) return; - glad_glBlendFuncSeparate = (PFNGLBLENDFUNCSEPARATEPROC)load("glBlendFuncSeparate"); - glad_glMultiDrawArrays = (PFNGLMULTIDRAWARRAYSPROC)load("glMultiDrawArrays"); - glad_glMultiDrawElements = (PFNGLMULTIDRAWELEMENTSPROC)load("glMultiDrawElements"); - glad_glPointParameterf = (PFNGLPOINTPARAMETERFPROC)load("glPointParameterf"); - glad_glPointParameterfv = (PFNGLPOINTPARAMETERFVPROC)load("glPointParameterfv"); - glad_glPointParameteri = (PFNGLPOINTPARAMETERIPROC)load("glPointParameteri"); - glad_glPointParameteriv = (PFNGLPOINTPARAMETERIVPROC)load("glPointParameteriv"); - glad_glFogCoordf = (PFNGLFOGCOORDFPROC)load("glFogCoordf"); - glad_glFogCoordfv = (PFNGLFOGCOORDFVPROC)load("glFogCoordfv"); - glad_glFogCoordd = (PFNGLFOGCOORDDPROC)load("glFogCoordd"); - glad_glFogCoorddv = (PFNGLFOGCOORDDVPROC)load("glFogCoorddv"); - glad_glFogCoordPointer = (PFNGLFOGCOORDPOINTERPROC)load("glFogCoordPointer"); - glad_glSecondaryColor3b = (PFNGLSECONDARYCOLOR3BPROC)load("glSecondaryColor3b"); - glad_glSecondaryColor3bv = (PFNGLSECONDARYCOLOR3BVPROC)load("glSecondaryColor3bv"); - glad_glSecondaryColor3d = (PFNGLSECONDARYCOLOR3DPROC)load("glSecondaryColor3d"); - glad_glSecondaryColor3dv = (PFNGLSECONDARYCOLOR3DVPROC)load("glSecondaryColor3dv"); - glad_glSecondaryColor3f = (PFNGLSECONDARYCOLOR3FPROC)load("glSecondaryColor3f"); - glad_glSecondaryColor3fv = (PFNGLSECONDARYCOLOR3FVPROC)load("glSecondaryColor3fv"); - glad_glSecondaryColor3i = (PFNGLSECONDARYCOLOR3IPROC)load("glSecondaryColor3i"); - glad_glSecondaryColor3iv = (PFNGLSECONDARYCOLOR3IVPROC)load("glSecondaryColor3iv"); - glad_glSecondaryColor3s = (PFNGLSECONDARYCOLOR3SPROC)load("glSecondaryColor3s"); - glad_glSecondaryColor3sv = (PFNGLSECONDARYCOLOR3SVPROC)load("glSecondaryColor3sv"); - glad_glSecondaryColor3ub = (PFNGLSECONDARYCOLOR3UBPROC)load("glSecondaryColor3ub"); - glad_glSecondaryColor3ubv = (PFNGLSECONDARYCOLOR3UBVPROC)load("glSecondaryColor3ubv"); - glad_glSecondaryColor3ui = (PFNGLSECONDARYCOLOR3UIPROC)load("glSecondaryColor3ui"); - glad_glSecondaryColor3uiv = (PFNGLSECONDARYCOLOR3UIVPROC)load("glSecondaryColor3uiv"); - glad_glSecondaryColor3us = (PFNGLSECONDARYCOLOR3USPROC)load("glSecondaryColor3us"); - glad_glSecondaryColor3usv = (PFNGLSECONDARYCOLOR3USVPROC)load("glSecondaryColor3usv"); - glad_glSecondaryColorPointer = (PFNGLSECONDARYCOLORPOINTERPROC)load("glSecondaryColorPointer"); - glad_glWindowPos2d = (PFNGLWINDOWPOS2DPROC)load("glWindowPos2d"); - glad_glWindowPos2dv = (PFNGLWINDOWPOS2DVPROC)load("glWindowPos2dv"); - glad_glWindowPos2f = (PFNGLWINDOWPOS2FPROC)load("glWindowPos2f"); - glad_glWindowPos2fv = (PFNGLWINDOWPOS2FVPROC)load("glWindowPos2fv"); - glad_glWindowPos2i = (PFNGLWINDOWPOS2IPROC)load("glWindowPos2i"); - glad_glWindowPos2iv = (PFNGLWINDOWPOS2IVPROC)load("glWindowPos2iv"); - glad_glWindowPos2s = (PFNGLWINDOWPOS2SPROC)load("glWindowPos2s"); - glad_glWindowPos2sv = (PFNGLWINDOWPOS2SVPROC)load("glWindowPos2sv"); - glad_glWindowPos3d = (PFNGLWINDOWPOS3DPROC)load("glWindowPos3d"); - glad_glWindowPos3dv = (PFNGLWINDOWPOS3DVPROC)load("glWindowPos3dv"); - glad_glWindowPos3f = (PFNGLWINDOWPOS3FPROC)load("glWindowPos3f"); - glad_glWindowPos3fv = (PFNGLWINDOWPOS3FVPROC)load("glWindowPos3fv"); - glad_glWindowPos3i = (PFNGLWINDOWPOS3IPROC)load("glWindowPos3i"); - glad_glWindowPos3iv = (PFNGLWINDOWPOS3IVPROC)load("glWindowPos3iv"); - glad_glWindowPos3s = (PFNGLWINDOWPOS3SPROC)load("glWindowPos3s"); - glad_glWindowPos3sv = (PFNGLWINDOWPOS3SVPROC)load("glWindowPos3sv"); - glad_glBlendColor = (PFNGLBLENDCOLORPROC)load("glBlendColor"); - glad_glBlendEquation = (PFNGLBLENDEQUATIONPROC)load("glBlendEquation"); -} -static void load_GL_VERSION_1_5(GLADloadproc load) { - if(!GLAD_GL_VERSION_1_5) return; - glad_glGenQueries = (PFNGLGENQUERIESPROC)load("glGenQueries"); - glad_glDeleteQueries = (PFNGLDELETEQUERIESPROC)load("glDeleteQueries"); - glad_glIsQuery = (PFNGLISQUERYPROC)load("glIsQuery"); - glad_glBeginQuery = (PFNGLBEGINQUERYPROC)load("glBeginQuery"); - glad_glEndQuery = (PFNGLENDQUERYPROC)load("glEndQuery"); - glad_glGetQueryiv = (PFNGLGETQUERYIVPROC)load("glGetQueryiv"); - glad_glGetQueryObjectiv = (PFNGLGETQUERYOBJECTIVPROC)load("glGetQueryObjectiv"); - glad_glGetQueryObjectuiv = (PFNGLGETQUERYOBJECTUIVPROC)load("glGetQueryObjectuiv"); - glad_glBindBuffer = (PFNGLBINDBUFFERPROC)load("glBindBuffer"); - glad_glDeleteBuffers = (PFNGLDELETEBUFFERSPROC)load("glDeleteBuffers"); - glad_glGenBuffers = (PFNGLGENBUFFERSPROC)load("glGenBuffers"); - glad_glIsBuffer = (PFNGLISBUFFERPROC)load("glIsBuffer"); - glad_glBufferData = (PFNGLBUFFERDATAPROC)load("glBufferData"); - glad_glBufferSubData = (PFNGLBUFFERSUBDATAPROC)load("glBufferSubData"); - glad_glGetBufferSubData = (PFNGLGETBUFFERSUBDATAPROC)load("glGetBufferSubData"); - glad_glMapBuffer = (PFNGLMAPBUFFERPROC)load("glMapBuffer"); - glad_glUnmapBuffer = (PFNGLUNMAPBUFFERPROC)load("glUnmapBuffer"); - glad_glGetBufferParameteriv = (PFNGLGETBUFFERPARAMETERIVPROC)load("glGetBufferParameteriv"); - glad_glGetBufferPointerv = (PFNGLGETBUFFERPOINTERVPROC)load("glGetBufferPointerv"); -} -static void load_GL_VERSION_2_0(GLADloadproc load) { - if(!GLAD_GL_VERSION_2_0) return; - glad_glBlendEquationSeparate = (PFNGLBLENDEQUATIONSEPARATEPROC)load("glBlendEquationSeparate"); - glad_glDrawBuffers = (PFNGLDRAWBUFFERSPROC)load("glDrawBuffers"); - glad_glStencilOpSeparate = (PFNGLSTENCILOPSEPARATEPROC)load("glStencilOpSeparate"); - glad_glStencilFuncSeparate = (PFNGLSTENCILFUNCSEPARATEPROC)load("glStencilFuncSeparate"); - glad_glStencilMaskSeparate = (PFNGLSTENCILMASKSEPARATEPROC)load("glStencilMaskSeparate"); - glad_glAttachShader = (PFNGLATTACHSHADERPROC)load("glAttachShader"); - glad_glBindAttribLocation = (PFNGLBINDATTRIBLOCATIONPROC)load("glBindAttribLocation"); - glad_glCompileShader = (PFNGLCOMPILESHADERPROC)load("glCompileShader"); - glad_glCreateProgram = (PFNGLCREATEPROGRAMPROC)load("glCreateProgram"); - glad_glCreateShader = (PFNGLCREATESHADERPROC)load("glCreateShader"); - glad_glDeleteProgram = (PFNGLDELETEPROGRAMPROC)load("glDeleteProgram"); - glad_glDeleteShader = (PFNGLDELETESHADERPROC)load("glDeleteShader"); - glad_glDetachShader = (PFNGLDETACHSHADERPROC)load("glDetachShader"); - glad_glDisableVertexAttribArray = (PFNGLDISABLEVERTEXATTRIBARRAYPROC)load("glDisableVertexAttribArray"); - glad_glEnableVertexAttribArray = (PFNGLENABLEVERTEXATTRIBARRAYPROC)load("glEnableVertexAttribArray"); - glad_glGetActiveAttrib = (PFNGLGETACTIVEATTRIBPROC)load("glGetActiveAttrib"); - glad_glGetActiveUniform = (PFNGLGETACTIVEUNIFORMPROC)load("glGetActiveUniform"); - glad_glGetAttachedShaders = (PFNGLGETATTACHEDSHADERSPROC)load("glGetAttachedShaders"); - glad_glGetAttribLocation = (PFNGLGETATTRIBLOCATIONPROC)load("glGetAttribLocation"); - glad_glGetProgramiv = (PFNGLGETPROGRAMIVPROC)load("glGetProgramiv"); - glad_glGetProgramInfoLog = (PFNGLGETPROGRAMINFOLOGPROC)load("glGetProgramInfoLog"); - glad_glGetShaderiv = (PFNGLGETSHADERIVPROC)load("glGetShaderiv"); - glad_glGetShaderInfoLog = (PFNGLGETSHADERINFOLOGPROC)load("glGetShaderInfoLog"); - glad_glGetShaderSource = (PFNGLGETSHADERSOURCEPROC)load("glGetShaderSource"); - glad_glGetUniformLocation = (PFNGLGETUNIFORMLOCATIONPROC)load("glGetUniformLocation"); - glad_glGetUniformfv = (PFNGLGETUNIFORMFVPROC)load("glGetUniformfv"); - glad_glGetUniformiv = (PFNGLGETUNIFORMIVPROC)load("glGetUniformiv"); - glad_glGetVertexAttribdv = (PFNGLGETVERTEXATTRIBDVPROC)load("glGetVertexAttribdv"); - glad_glGetVertexAttribfv = (PFNGLGETVERTEXATTRIBFVPROC)load("glGetVertexAttribfv"); - glad_glGetVertexAttribiv = (PFNGLGETVERTEXATTRIBIVPROC)load("glGetVertexAttribiv"); - glad_glGetVertexAttribPointerv = (PFNGLGETVERTEXATTRIBPOINTERVPROC)load("glGetVertexAttribPointerv"); - glad_glIsProgram = (PFNGLISPROGRAMPROC)load("glIsProgram"); - glad_glIsShader = (PFNGLISSHADERPROC)load("glIsShader"); - glad_glLinkProgram = (PFNGLLINKPROGRAMPROC)load("glLinkProgram"); - glad_glShaderSource = (PFNGLSHADERSOURCEPROC)load("glShaderSource"); - glad_glUseProgram = (PFNGLUSEPROGRAMPROC)load("glUseProgram"); - glad_glUniform1f = (PFNGLUNIFORM1FPROC)load("glUniform1f"); - glad_glUniform2f = (PFNGLUNIFORM2FPROC)load("glUniform2f"); - glad_glUniform3f = (PFNGLUNIFORM3FPROC)load("glUniform3f"); - glad_glUniform4f = (PFNGLUNIFORM4FPROC)load("glUniform4f"); - glad_glUniform1i = (PFNGLUNIFORM1IPROC)load("glUniform1i"); - glad_glUniform2i = (PFNGLUNIFORM2IPROC)load("glUniform2i"); - glad_glUniform3i = (PFNGLUNIFORM3IPROC)load("glUniform3i"); - glad_glUniform4i = (PFNGLUNIFORM4IPROC)load("glUniform4i"); - glad_glUniform1fv = (PFNGLUNIFORM1FVPROC)load("glUniform1fv"); - glad_glUniform2fv = (PFNGLUNIFORM2FVPROC)load("glUniform2fv"); - glad_glUniform3fv = (PFNGLUNIFORM3FVPROC)load("glUniform3fv"); - glad_glUniform4fv = (PFNGLUNIFORM4FVPROC)load("glUniform4fv"); - glad_glUniform1iv = (PFNGLUNIFORM1IVPROC)load("glUniform1iv"); - glad_glUniform2iv = (PFNGLUNIFORM2IVPROC)load("glUniform2iv"); - glad_glUniform3iv = (PFNGLUNIFORM3IVPROC)load("glUniform3iv"); - glad_glUniform4iv = (PFNGLUNIFORM4IVPROC)load("glUniform4iv"); - glad_glUniformMatrix2fv = (PFNGLUNIFORMMATRIX2FVPROC)load("glUniformMatrix2fv"); - glad_glUniformMatrix3fv = (PFNGLUNIFORMMATRIX3FVPROC)load("glUniformMatrix3fv"); - glad_glUniformMatrix4fv = (PFNGLUNIFORMMATRIX4FVPROC)load("glUniformMatrix4fv"); - glad_glValidateProgram = (PFNGLVALIDATEPROGRAMPROC)load("glValidateProgram"); - glad_glVertexAttrib1d = (PFNGLVERTEXATTRIB1DPROC)load("glVertexAttrib1d"); - glad_glVertexAttrib1dv = (PFNGLVERTEXATTRIB1DVPROC)load("glVertexAttrib1dv"); - glad_glVertexAttrib1f = (PFNGLVERTEXATTRIB1FPROC)load("glVertexAttrib1f"); - glad_glVertexAttrib1fv = (PFNGLVERTEXATTRIB1FVPROC)load("glVertexAttrib1fv"); - glad_glVertexAttrib1s = (PFNGLVERTEXATTRIB1SPROC)load("glVertexAttrib1s"); - glad_glVertexAttrib1sv = (PFNGLVERTEXATTRIB1SVPROC)load("glVertexAttrib1sv"); - glad_glVertexAttrib2d = (PFNGLVERTEXATTRIB2DPROC)load("glVertexAttrib2d"); - glad_glVertexAttrib2dv = (PFNGLVERTEXATTRIB2DVPROC)load("glVertexAttrib2dv"); - glad_glVertexAttrib2f = (PFNGLVERTEXATTRIB2FPROC)load("glVertexAttrib2f"); - glad_glVertexAttrib2fv = (PFNGLVERTEXATTRIB2FVPROC)load("glVertexAttrib2fv"); - glad_glVertexAttrib2s = (PFNGLVERTEXATTRIB2SPROC)load("glVertexAttrib2s"); - glad_glVertexAttrib2sv = (PFNGLVERTEXATTRIB2SVPROC)load("glVertexAttrib2sv"); - glad_glVertexAttrib3d = (PFNGLVERTEXATTRIB3DPROC)load("glVertexAttrib3d"); - glad_glVertexAttrib3dv = (PFNGLVERTEXATTRIB3DVPROC)load("glVertexAttrib3dv"); - glad_glVertexAttrib3f = (PFNGLVERTEXATTRIB3FPROC)load("glVertexAttrib3f"); - glad_glVertexAttrib3fv = (PFNGLVERTEXATTRIB3FVPROC)load("glVertexAttrib3fv"); - glad_glVertexAttrib3s = (PFNGLVERTEXATTRIB3SPROC)load("glVertexAttrib3s"); - glad_glVertexAttrib3sv = (PFNGLVERTEXATTRIB3SVPROC)load("glVertexAttrib3sv"); - glad_glVertexAttrib4Nbv = (PFNGLVERTEXATTRIB4NBVPROC)load("glVertexAttrib4Nbv"); - glad_glVertexAttrib4Niv = (PFNGLVERTEXATTRIB4NIVPROC)load("glVertexAttrib4Niv"); - glad_glVertexAttrib4Nsv = (PFNGLVERTEXATTRIB4NSVPROC)load("glVertexAttrib4Nsv"); - glad_glVertexAttrib4Nub = (PFNGLVERTEXATTRIB4NUBPROC)load("glVertexAttrib4Nub"); - glad_glVertexAttrib4Nubv = (PFNGLVERTEXATTRIB4NUBVPROC)load("glVertexAttrib4Nubv"); - glad_glVertexAttrib4Nuiv = (PFNGLVERTEXATTRIB4NUIVPROC)load("glVertexAttrib4Nuiv"); - glad_glVertexAttrib4Nusv = (PFNGLVERTEXATTRIB4NUSVPROC)load("glVertexAttrib4Nusv"); - glad_glVertexAttrib4bv = (PFNGLVERTEXATTRIB4BVPROC)load("glVertexAttrib4bv"); - glad_glVertexAttrib4d = (PFNGLVERTEXATTRIB4DPROC)load("glVertexAttrib4d"); - glad_glVertexAttrib4dv = (PFNGLVERTEXATTRIB4DVPROC)load("glVertexAttrib4dv"); - glad_glVertexAttrib4f = (PFNGLVERTEXATTRIB4FPROC)load("glVertexAttrib4f"); - glad_glVertexAttrib4fv = (PFNGLVERTEXATTRIB4FVPROC)load("glVertexAttrib4fv"); - glad_glVertexAttrib4iv = (PFNGLVERTEXATTRIB4IVPROC)load("glVertexAttrib4iv"); - glad_glVertexAttrib4s = (PFNGLVERTEXATTRIB4SPROC)load("glVertexAttrib4s"); - glad_glVertexAttrib4sv = (PFNGLVERTEXATTRIB4SVPROC)load("glVertexAttrib4sv"); - glad_glVertexAttrib4ubv = (PFNGLVERTEXATTRIB4UBVPROC)load("glVertexAttrib4ubv"); - glad_glVertexAttrib4uiv = (PFNGLVERTEXATTRIB4UIVPROC)load("glVertexAttrib4uiv"); - glad_glVertexAttrib4usv = (PFNGLVERTEXATTRIB4USVPROC)load("glVertexAttrib4usv"); - glad_glVertexAttribPointer = (PFNGLVERTEXATTRIBPOINTERPROC)load("glVertexAttribPointer"); -} -static void load_GL_VERSION_2_1(GLADloadproc load) { - if(!GLAD_GL_VERSION_2_1) return; - glad_glUniformMatrix2x3fv = (PFNGLUNIFORMMATRIX2X3FVPROC)load("glUniformMatrix2x3fv"); - glad_glUniformMatrix3x2fv = (PFNGLUNIFORMMATRIX3X2FVPROC)load("glUniformMatrix3x2fv"); - glad_glUniformMatrix2x4fv = (PFNGLUNIFORMMATRIX2X4FVPROC)load("glUniformMatrix2x4fv"); - glad_glUniformMatrix4x2fv = (PFNGLUNIFORMMATRIX4X2FVPROC)load("glUniformMatrix4x2fv"); - glad_glUniformMatrix3x4fv = (PFNGLUNIFORMMATRIX3X4FVPROC)load("glUniformMatrix3x4fv"); - glad_glUniformMatrix4x3fv = (PFNGLUNIFORMMATRIX4X3FVPROC)load("glUniformMatrix4x3fv"); -} -static void load_GL_VERSION_3_0(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_0) return; - glad_glColorMaski = (PFNGLCOLORMASKIPROC)load("glColorMaski"); - glad_glGetBooleani_v = (PFNGLGETBOOLEANI_VPROC)load("glGetBooleani_v"); - glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v"); - glad_glEnablei = (PFNGLENABLEIPROC)load("glEnablei"); - glad_glDisablei = (PFNGLDISABLEIPROC)load("glDisablei"); - glad_glIsEnabledi = (PFNGLISENABLEDIPROC)load("glIsEnabledi"); - glad_glBeginTransformFeedback = (PFNGLBEGINTRANSFORMFEEDBACKPROC)load("glBeginTransformFeedback"); - glad_glEndTransformFeedback = (PFNGLENDTRANSFORMFEEDBACKPROC)load("glEndTransformFeedback"); - glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange"); - glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase"); - glad_glTransformFeedbackVaryings = (PFNGLTRANSFORMFEEDBACKVARYINGSPROC)load("glTransformFeedbackVaryings"); - glad_glGetTransformFeedbackVarying = (PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)load("glGetTransformFeedbackVarying"); - glad_glClampColor = (PFNGLCLAMPCOLORPROC)load("glClampColor"); - glad_glBeginConditionalRender = (PFNGLBEGINCONDITIONALRENDERPROC)load("glBeginConditionalRender"); - glad_glEndConditionalRender = (PFNGLENDCONDITIONALRENDERPROC)load("glEndConditionalRender"); - glad_glVertexAttribIPointer = (PFNGLVERTEXATTRIBIPOINTERPROC)load("glVertexAttribIPointer"); - glad_glGetVertexAttribIiv = (PFNGLGETVERTEXATTRIBIIVPROC)load("glGetVertexAttribIiv"); - glad_glGetVertexAttribIuiv = (PFNGLGETVERTEXATTRIBIUIVPROC)load("glGetVertexAttribIuiv"); - glad_glVertexAttribI1i = (PFNGLVERTEXATTRIBI1IPROC)load("glVertexAttribI1i"); - glad_glVertexAttribI2i = (PFNGLVERTEXATTRIBI2IPROC)load("glVertexAttribI2i"); - glad_glVertexAttribI3i = (PFNGLVERTEXATTRIBI3IPROC)load("glVertexAttribI3i"); - glad_glVertexAttribI4i = (PFNGLVERTEXATTRIBI4IPROC)load("glVertexAttribI4i"); - glad_glVertexAttribI1ui = (PFNGLVERTEXATTRIBI1UIPROC)load("glVertexAttribI1ui"); - glad_glVertexAttribI2ui = (PFNGLVERTEXATTRIBI2UIPROC)load("glVertexAttribI2ui"); - glad_glVertexAttribI3ui = (PFNGLVERTEXATTRIBI3UIPROC)load("glVertexAttribI3ui"); - glad_glVertexAttribI4ui = (PFNGLVERTEXATTRIBI4UIPROC)load("glVertexAttribI4ui"); - glad_glVertexAttribI1iv = (PFNGLVERTEXATTRIBI1IVPROC)load("glVertexAttribI1iv"); - glad_glVertexAttribI2iv = (PFNGLVERTEXATTRIBI2IVPROC)load("glVertexAttribI2iv"); - glad_glVertexAttribI3iv = (PFNGLVERTEXATTRIBI3IVPROC)load("glVertexAttribI3iv"); - glad_glVertexAttribI4iv = (PFNGLVERTEXATTRIBI4IVPROC)load("glVertexAttribI4iv"); - glad_glVertexAttribI1uiv = (PFNGLVERTEXATTRIBI1UIVPROC)load("glVertexAttribI1uiv"); - glad_glVertexAttribI2uiv = (PFNGLVERTEXATTRIBI2UIVPROC)load("glVertexAttribI2uiv"); - glad_glVertexAttribI3uiv = (PFNGLVERTEXATTRIBI3UIVPROC)load("glVertexAttribI3uiv"); - glad_glVertexAttribI4uiv = (PFNGLVERTEXATTRIBI4UIVPROC)load("glVertexAttribI4uiv"); - glad_glVertexAttribI4bv = (PFNGLVERTEXATTRIBI4BVPROC)load("glVertexAttribI4bv"); - glad_glVertexAttribI4sv = (PFNGLVERTEXATTRIBI4SVPROC)load("glVertexAttribI4sv"); - glad_glVertexAttribI4ubv = (PFNGLVERTEXATTRIBI4UBVPROC)load("glVertexAttribI4ubv"); - glad_glVertexAttribI4usv = (PFNGLVERTEXATTRIBI4USVPROC)load("glVertexAttribI4usv"); - glad_glGetUniformuiv = (PFNGLGETUNIFORMUIVPROC)load("glGetUniformuiv"); - glad_glBindFragDataLocation = (PFNGLBINDFRAGDATALOCATIONPROC)load("glBindFragDataLocation"); - glad_glGetFragDataLocation = (PFNGLGETFRAGDATALOCATIONPROC)load("glGetFragDataLocation"); - glad_glUniform1ui = (PFNGLUNIFORM1UIPROC)load("glUniform1ui"); - glad_glUniform2ui = (PFNGLUNIFORM2UIPROC)load("glUniform2ui"); - glad_glUniform3ui = (PFNGLUNIFORM3UIPROC)load("glUniform3ui"); - glad_glUniform4ui = (PFNGLUNIFORM4UIPROC)load("glUniform4ui"); - glad_glUniform1uiv = (PFNGLUNIFORM1UIVPROC)load("glUniform1uiv"); - glad_glUniform2uiv = (PFNGLUNIFORM2UIVPROC)load("glUniform2uiv"); - glad_glUniform3uiv = (PFNGLUNIFORM3UIVPROC)load("glUniform3uiv"); - glad_glUniform4uiv = (PFNGLUNIFORM4UIVPROC)load("glUniform4uiv"); - glad_glTexParameterIiv = (PFNGLTEXPARAMETERIIVPROC)load("glTexParameterIiv"); - glad_glTexParameterIuiv = (PFNGLTEXPARAMETERIUIVPROC)load("glTexParameterIuiv"); - glad_glGetTexParameterIiv = (PFNGLGETTEXPARAMETERIIVPROC)load("glGetTexParameterIiv"); - glad_glGetTexParameterIuiv = (PFNGLGETTEXPARAMETERIUIVPROC)load("glGetTexParameterIuiv"); - glad_glClearBufferiv = (PFNGLCLEARBUFFERIVPROC)load("glClearBufferiv"); - glad_glClearBufferuiv = (PFNGLCLEARBUFFERUIVPROC)load("glClearBufferuiv"); - glad_glClearBufferfv = (PFNGLCLEARBUFFERFVPROC)load("glClearBufferfv"); - glad_glClearBufferfi = (PFNGLCLEARBUFFERFIPROC)load("glClearBufferfi"); - glad_glGetStringi = (PFNGLGETSTRINGIPROC)load("glGetStringi"); - glad_glIsRenderbuffer = (PFNGLISRENDERBUFFERPROC)load("glIsRenderbuffer"); - glad_glBindRenderbuffer = (PFNGLBINDRENDERBUFFERPROC)load("glBindRenderbuffer"); - glad_glDeleteRenderbuffers = (PFNGLDELETERENDERBUFFERSPROC)load("glDeleteRenderbuffers"); - glad_glGenRenderbuffers = (PFNGLGENRENDERBUFFERSPROC)load("glGenRenderbuffers"); - glad_glRenderbufferStorage = (PFNGLRENDERBUFFERSTORAGEPROC)load("glRenderbufferStorage"); - glad_glGetRenderbufferParameteriv = (PFNGLGETRENDERBUFFERPARAMETERIVPROC)load("glGetRenderbufferParameteriv"); - glad_glIsFramebuffer = (PFNGLISFRAMEBUFFERPROC)load("glIsFramebuffer"); - glad_glBindFramebuffer = (PFNGLBINDFRAMEBUFFERPROC)load("glBindFramebuffer"); - glad_glDeleteFramebuffers = (PFNGLDELETEFRAMEBUFFERSPROC)load("glDeleteFramebuffers"); - glad_glGenFramebuffers = (PFNGLGENFRAMEBUFFERSPROC)load("glGenFramebuffers"); - glad_glCheckFramebufferStatus = (PFNGLCHECKFRAMEBUFFERSTATUSPROC)load("glCheckFramebufferStatus"); - glad_glFramebufferTexture1D = (PFNGLFRAMEBUFFERTEXTURE1DPROC)load("glFramebufferTexture1D"); - glad_glFramebufferTexture2D = (PFNGLFRAMEBUFFERTEXTURE2DPROC)load("glFramebufferTexture2D"); - glad_glFramebufferTexture3D = (PFNGLFRAMEBUFFERTEXTURE3DPROC)load("glFramebufferTexture3D"); - glad_glFramebufferRenderbuffer = (PFNGLFRAMEBUFFERRENDERBUFFERPROC)load("glFramebufferRenderbuffer"); - glad_glGetFramebufferAttachmentParameteriv = (PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)load("glGetFramebufferAttachmentParameteriv"); - glad_glGenerateMipmap = (PFNGLGENERATEMIPMAPPROC)load("glGenerateMipmap"); - glad_glBlitFramebuffer = (PFNGLBLITFRAMEBUFFERPROC)load("glBlitFramebuffer"); - glad_glRenderbufferStorageMultisample = (PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)load("glRenderbufferStorageMultisample"); - glad_glFramebufferTextureLayer = (PFNGLFRAMEBUFFERTEXTURELAYERPROC)load("glFramebufferTextureLayer"); - glad_glMapBufferRange = (PFNGLMAPBUFFERRANGEPROC)load("glMapBufferRange"); - glad_glFlushMappedBufferRange = (PFNGLFLUSHMAPPEDBUFFERRANGEPROC)load("glFlushMappedBufferRange"); - glad_glBindVertexArray = (PFNGLBINDVERTEXARRAYPROC)load("glBindVertexArray"); - glad_glDeleteVertexArrays = (PFNGLDELETEVERTEXARRAYSPROC)load("glDeleteVertexArrays"); - glad_glGenVertexArrays = (PFNGLGENVERTEXARRAYSPROC)load("glGenVertexArrays"); - glad_glIsVertexArray = (PFNGLISVERTEXARRAYPROC)load("glIsVertexArray"); -} -static void load_GL_VERSION_3_1(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_1) return; - glad_glDrawArraysInstanced = (PFNGLDRAWARRAYSINSTANCEDPROC)load("glDrawArraysInstanced"); - glad_glDrawElementsInstanced = (PFNGLDRAWELEMENTSINSTANCEDPROC)load("glDrawElementsInstanced"); - glad_glTexBuffer = (PFNGLTEXBUFFERPROC)load("glTexBuffer"); - glad_glPrimitiveRestartIndex = (PFNGLPRIMITIVERESTARTINDEXPROC)load("glPrimitiveRestartIndex"); - glad_glCopyBufferSubData = (PFNGLCOPYBUFFERSUBDATAPROC)load("glCopyBufferSubData"); - glad_glGetUniformIndices = (PFNGLGETUNIFORMINDICESPROC)load("glGetUniformIndices"); - glad_glGetActiveUniformsiv = (PFNGLGETACTIVEUNIFORMSIVPROC)load("glGetActiveUniformsiv"); - glad_glGetActiveUniformName = (PFNGLGETACTIVEUNIFORMNAMEPROC)load("glGetActiveUniformName"); - glad_glGetUniformBlockIndex = (PFNGLGETUNIFORMBLOCKINDEXPROC)load("glGetUniformBlockIndex"); - glad_glGetActiveUniformBlockiv = (PFNGLGETACTIVEUNIFORMBLOCKIVPROC)load("glGetActiveUniformBlockiv"); - glad_glGetActiveUniformBlockName = (PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)load("glGetActiveUniformBlockName"); - glad_glUniformBlockBinding = (PFNGLUNIFORMBLOCKBINDINGPROC)load("glUniformBlockBinding"); - glad_glBindBufferRange = (PFNGLBINDBUFFERRANGEPROC)load("glBindBufferRange"); - glad_glBindBufferBase = (PFNGLBINDBUFFERBASEPROC)load("glBindBufferBase"); - glad_glGetIntegeri_v = (PFNGLGETINTEGERI_VPROC)load("glGetIntegeri_v"); -} -static void load_GL_VERSION_3_2(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_2) return; - glad_glDrawElementsBaseVertex = (PFNGLDRAWELEMENTSBASEVERTEXPROC)load("glDrawElementsBaseVertex"); - glad_glDrawRangeElementsBaseVertex = (PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)load("glDrawRangeElementsBaseVertex"); - glad_glDrawElementsInstancedBaseVertex = (PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)load("glDrawElementsInstancedBaseVertex"); - glad_glMultiDrawElementsBaseVertex = (PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)load("glMultiDrawElementsBaseVertex"); - glad_glProvokingVertex = (PFNGLPROVOKINGVERTEXPROC)load("glProvokingVertex"); - glad_glFenceSync = (PFNGLFENCESYNCPROC)load("glFenceSync"); - glad_glIsSync = (PFNGLISSYNCPROC)load("glIsSync"); - glad_glDeleteSync = (PFNGLDELETESYNCPROC)load("glDeleteSync"); - glad_glClientWaitSync = (PFNGLCLIENTWAITSYNCPROC)load("glClientWaitSync"); - glad_glWaitSync = (PFNGLWAITSYNCPROC)load("glWaitSync"); - glad_glGetInteger64v = (PFNGLGETINTEGER64VPROC)load("glGetInteger64v"); - glad_glGetSynciv = (PFNGLGETSYNCIVPROC)load("glGetSynciv"); - glad_glGetInteger64i_v = (PFNGLGETINTEGER64I_VPROC)load("glGetInteger64i_v"); - glad_glGetBufferParameteri64v = (PFNGLGETBUFFERPARAMETERI64VPROC)load("glGetBufferParameteri64v"); - glad_glFramebufferTexture = (PFNGLFRAMEBUFFERTEXTUREPROC)load("glFramebufferTexture"); - glad_glTexImage2DMultisample = (PFNGLTEXIMAGE2DMULTISAMPLEPROC)load("glTexImage2DMultisample"); - glad_glTexImage3DMultisample = (PFNGLTEXIMAGE3DMULTISAMPLEPROC)load("glTexImage3DMultisample"); - glad_glGetMultisamplefv = (PFNGLGETMULTISAMPLEFVPROC)load("glGetMultisamplefv"); - glad_glSampleMaski = (PFNGLSAMPLEMASKIPROC)load("glSampleMaski"); -} -static void load_GL_VERSION_3_3(GLADloadproc load) { - if(!GLAD_GL_VERSION_3_3) return; - glad_glBindFragDataLocationIndexed = (PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)load("glBindFragDataLocationIndexed"); - glad_glGetFragDataIndex = (PFNGLGETFRAGDATAINDEXPROC)load("glGetFragDataIndex"); - glad_glGenSamplers = (PFNGLGENSAMPLERSPROC)load("glGenSamplers"); - glad_glDeleteSamplers = (PFNGLDELETESAMPLERSPROC)load("glDeleteSamplers"); - glad_glIsSampler = (PFNGLISSAMPLERPROC)load("glIsSampler"); - glad_glBindSampler = (PFNGLBINDSAMPLERPROC)load("glBindSampler"); - glad_glSamplerParameteri = (PFNGLSAMPLERPARAMETERIPROC)load("glSamplerParameteri"); - glad_glSamplerParameteriv = (PFNGLSAMPLERPARAMETERIVPROC)load("glSamplerParameteriv"); - glad_glSamplerParameterf = (PFNGLSAMPLERPARAMETERFPROC)load("glSamplerParameterf"); - glad_glSamplerParameterfv = (PFNGLSAMPLERPARAMETERFVPROC)load("glSamplerParameterfv"); - glad_glSamplerParameterIiv = (PFNGLSAMPLERPARAMETERIIVPROC)load("glSamplerParameterIiv"); - glad_glSamplerParameterIuiv = (PFNGLSAMPLERPARAMETERIUIVPROC)load("glSamplerParameterIuiv"); - glad_glGetSamplerParameteriv = (PFNGLGETSAMPLERPARAMETERIVPROC)load("glGetSamplerParameteriv"); - glad_glGetSamplerParameterIiv = (PFNGLGETSAMPLERPARAMETERIIVPROC)load("glGetSamplerParameterIiv"); - glad_glGetSamplerParameterfv = (PFNGLGETSAMPLERPARAMETERFVPROC)load("glGetSamplerParameterfv"); - glad_glGetSamplerParameterIuiv = (PFNGLGETSAMPLERPARAMETERIUIVPROC)load("glGetSamplerParameterIuiv"); - glad_glQueryCounter = (PFNGLQUERYCOUNTERPROC)load("glQueryCounter"); - glad_glGetQueryObjecti64v = (PFNGLGETQUERYOBJECTI64VPROC)load("glGetQueryObjecti64v"); - glad_glGetQueryObjectui64v = (PFNGLGETQUERYOBJECTUI64VPROC)load("glGetQueryObjectui64v"); - glad_glVertexAttribDivisor = (PFNGLVERTEXATTRIBDIVISORPROC)load("glVertexAttribDivisor"); - glad_glVertexAttribP1ui = (PFNGLVERTEXATTRIBP1UIPROC)load("glVertexAttribP1ui"); - glad_glVertexAttribP1uiv = (PFNGLVERTEXATTRIBP1UIVPROC)load("glVertexAttribP1uiv"); - glad_glVertexAttribP2ui = (PFNGLVERTEXATTRIBP2UIPROC)load("glVertexAttribP2ui"); - glad_glVertexAttribP2uiv = (PFNGLVERTEXATTRIBP2UIVPROC)load("glVertexAttribP2uiv"); - glad_glVertexAttribP3ui = (PFNGLVERTEXATTRIBP3UIPROC)load("glVertexAttribP3ui"); - glad_glVertexAttribP3uiv = (PFNGLVERTEXATTRIBP3UIVPROC)load("glVertexAttribP3uiv"); - glad_glVertexAttribP4ui = (PFNGLVERTEXATTRIBP4UIPROC)load("glVertexAttribP4ui"); - glad_glVertexAttribP4uiv = (PFNGLVERTEXATTRIBP4UIVPROC)load("glVertexAttribP4uiv"); - glad_glVertexP2ui = (PFNGLVERTEXP2UIPROC)load("glVertexP2ui"); - glad_glVertexP2uiv = (PFNGLVERTEXP2UIVPROC)load("glVertexP2uiv"); - glad_glVertexP3ui = (PFNGLVERTEXP3UIPROC)load("glVertexP3ui"); - glad_glVertexP3uiv = (PFNGLVERTEXP3UIVPROC)load("glVertexP3uiv"); - glad_glVertexP4ui = (PFNGLVERTEXP4UIPROC)load("glVertexP4ui"); - glad_glVertexP4uiv = (PFNGLVERTEXP4UIVPROC)load("glVertexP4uiv"); - glad_glTexCoordP1ui = (PFNGLTEXCOORDP1UIPROC)load("glTexCoordP1ui"); - glad_glTexCoordP1uiv = (PFNGLTEXCOORDP1UIVPROC)load("glTexCoordP1uiv"); - glad_glTexCoordP2ui = (PFNGLTEXCOORDP2UIPROC)load("glTexCoordP2ui"); - glad_glTexCoordP2uiv = (PFNGLTEXCOORDP2UIVPROC)load("glTexCoordP2uiv"); - glad_glTexCoordP3ui = (PFNGLTEXCOORDP3UIPROC)load("glTexCoordP3ui"); - glad_glTexCoordP3uiv = (PFNGLTEXCOORDP3UIVPROC)load("glTexCoordP3uiv"); - glad_glTexCoordP4ui = (PFNGLTEXCOORDP4UIPROC)load("glTexCoordP4ui"); - glad_glTexCoordP4uiv = (PFNGLTEXCOORDP4UIVPROC)load("glTexCoordP4uiv"); - glad_glMultiTexCoordP1ui = (PFNGLMULTITEXCOORDP1UIPROC)load("glMultiTexCoordP1ui"); - glad_glMultiTexCoordP1uiv = (PFNGLMULTITEXCOORDP1UIVPROC)load("glMultiTexCoordP1uiv"); - glad_glMultiTexCoordP2ui = (PFNGLMULTITEXCOORDP2UIPROC)load("glMultiTexCoordP2ui"); - glad_glMultiTexCoordP2uiv = (PFNGLMULTITEXCOORDP2UIVPROC)load("glMultiTexCoordP2uiv"); - glad_glMultiTexCoordP3ui = (PFNGLMULTITEXCOORDP3UIPROC)load("glMultiTexCoordP3ui"); - glad_glMultiTexCoordP3uiv = (PFNGLMULTITEXCOORDP3UIVPROC)load("glMultiTexCoordP3uiv"); - glad_glMultiTexCoordP4ui = (PFNGLMULTITEXCOORDP4UIPROC)load("glMultiTexCoordP4ui"); - glad_glMultiTexCoordP4uiv = (PFNGLMULTITEXCOORDP4UIVPROC)load("glMultiTexCoordP4uiv"); - glad_glNormalP3ui = (PFNGLNORMALP3UIPROC)load("glNormalP3ui"); - glad_glNormalP3uiv = (PFNGLNORMALP3UIVPROC)load("glNormalP3uiv"); - glad_glColorP3ui = (PFNGLCOLORP3UIPROC)load("glColorP3ui"); - glad_glColorP3uiv = (PFNGLCOLORP3UIVPROC)load("glColorP3uiv"); - glad_glColorP4ui = (PFNGLCOLORP4UIPROC)load("glColorP4ui"); - glad_glColorP4uiv = (PFNGLCOLORP4UIVPROC)load("glColorP4uiv"); - glad_glSecondaryColorP3ui = (PFNGLSECONDARYCOLORP3UIPROC)load("glSecondaryColorP3ui"); - glad_glSecondaryColorP3uiv = (PFNGLSECONDARYCOLORP3UIVPROC)load("glSecondaryColorP3uiv"); -} -static int find_extensionsGL(void) { - if (!get_exts()) return 0; - (void)&has_ext; - free_exts(); - return 1; -} - -static void find_coreGL(void) { - - /* Thank you @elmindreda - * https://github.com/elmindreda/greg/blob/master/templates/greg.c.in#L176 - * https://github.com/glfw/glfw/blob/master/src/context.c#L36 - */ - int i, major, minor; - - const char* version; - const char* prefixes[] = { - "OpenGL ES-CM ", - "OpenGL ES-CL ", - "OpenGL ES ", - NULL - }; - - version = (const char*) glGetString(GL_VERSION); - if (!version) return; - - for (i = 0; prefixes[i]; i++) { - const size_t length = strlen(prefixes[i]); - if (strncmp(version, prefixes[i], length) == 0) { - version += length; - break; - } - } - -/* PR #18 */ -#ifdef _MSC_VER - sscanf_s(version, "%d.%d", &major, &minor); -#else - sscanf(version, "%d.%d", &major, &minor); -#endif - - GLVersion.major = major; GLVersion.minor = minor; - max_loaded_major = major; max_loaded_minor = minor; - GLAD_GL_VERSION_1_0 = (major == 1 && minor >= 0) || major > 1; - GLAD_GL_VERSION_1_1 = (major == 1 && minor >= 1) || major > 1; - GLAD_GL_VERSION_1_2 = (major == 1 && minor >= 2) || major > 1; - GLAD_GL_VERSION_1_3 = (major == 1 && minor >= 3) || major > 1; - GLAD_GL_VERSION_1_4 = (major == 1 && minor >= 4) || major > 1; - GLAD_GL_VERSION_1_5 = (major == 1 && minor >= 5) || major > 1; - GLAD_GL_VERSION_2_0 = (major == 2 && minor >= 0) || major > 2; - GLAD_GL_VERSION_2_1 = (major == 2 && minor >= 1) || major > 2; - GLAD_GL_VERSION_3_0 = (major == 3 && minor >= 0) || major > 3; - GLAD_GL_VERSION_3_1 = (major == 3 && minor >= 1) || major > 3; - GLAD_GL_VERSION_3_2 = (major == 3 && minor >= 2) || major > 3; - GLAD_GL_VERSION_3_3 = (major == 3 && minor >= 3) || major > 3; - if (GLVersion.major > 3 || (GLVersion.major >= 3 && GLVersion.minor >= 3)) { - max_loaded_major = 3; - max_loaded_minor = 3; - } -} - -int gladLoadGLLoader(GLADloadproc load) { - GLVersion.major = 0; GLVersion.minor = 0; - glGetString = (PFNGLGETSTRINGPROC)load("glGetString"); - if(glGetString == NULL) return 0; - if(glGetString(GL_VERSION) == NULL) return 0; - find_coreGL(); - load_GL_VERSION_1_0(load); - load_GL_VERSION_1_1(load); - load_GL_VERSION_1_2(load); - load_GL_VERSION_1_3(load); - load_GL_VERSION_1_4(load); - load_GL_VERSION_1_5(load); - load_GL_VERSION_2_0(load); - load_GL_VERSION_2_1(load); - load_GL_VERSION_3_0(load); - load_GL_VERSION_3_1(load); - load_GL_VERSION_3_2(load); - load_GL_VERSION_3_3(load); - - if (!find_extensionsGL()) return 0; - return GLVersion.major != 0 || GLVersion.minor != 0; -} - diff --git a/glad.h b/glad.h deleted file mode 100644 index 7154acb..0000000 --- a/glad.h +++ /dev/null @@ -1,3611 +0,0 @@ -/* - - OpenGL loader generated by glad 0.1.34 on Fri Mar 26 13:29:23 2021. - - Language/Generator: C/C++ - Specification: gl - APIs: gl=3.3 - Profile: compatibility - Extensions: - - Loader: True - Local files: True - Omit khrplatform: False - Reproducible: False - - Commandline: - --profile="compatibility" --api="gl=3.3" --generator="c" --spec="gl" --local-files --extensions="" - Online: - https://glad.dav1d.de/#profile=compatibility&language=c&specification=gl&loader=on&api=gl%3D3.3 -*/ - - -#ifndef __glad_h_ -#define __glad_h_ - -#ifdef __gl_h_ -#error OpenGL header already included, remove this include, glad already provides it -#endif -#define __gl_h_ - -#if defined(_WIN32) && !defined(APIENTRY) && !defined(__CYGWIN__) && !defined(__SCITECH_SNAP__) -#define APIENTRY __stdcall -#endif - -#ifndef APIENTRY -#define APIENTRY -#endif -#ifndef APIENTRYP -#define APIENTRYP APIENTRY * -#endif - -#ifndef GLAPIENTRY -#define GLAPIENTRY APIENTRY -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -struct gladGLversionStruct { - int major; - int minor; -}; - -typedef void* (* GLADloadproc)(const char *name); - -#ifndef GLAPI -# if defined(GLAD_GLAPI_EXPORT) -# if defined(_WIN32) || defined(__CYGWIN__) -# if defined(GLAD_GLAPI_EXPORT_BUILD) -# if defined(__GNUC__) -# define GLAPI __attribute__ ((dllexport)) extern -# else -# define GLAPI __declspec(dllexport) extern -# endif -# else -# if defined(__GNUC__) -# define GLAPI __attribute__ ((dllimport)) extern -# else -# define GLAPI __declspec(dllimport) extern -# endif -# endif -# elif defined(__GNUC__) && defined(GLAD_GLAPI_EXPORT_BUILD) -# define GLAPI __attribute__ ((visibility ("default"))) extern -# else -# define GLAPI extern -# endif -# else -# define GLAPI extern -# endif -#endif - -GLAPI struct gladGLversionStruct GLVersion; - -GLAPI int gladLoadGL(void); - -GLAPI int gladLoadGLLoader(GLADloadproc); - -#include "khrplatform.h" -typedef unsigned int GLenum; -typedef unsigned char GLboolean; -typedef unsigned int GLbitfield; -typedef void GLvoid; -typedef khronos_int8_t GLbyte; -typedef khronos_uint8_t GLubyte; -typedef khronos_int16_t GLshort; -typedef khronos_uint16_t GLushort; -typedef int GLint; -typedef unsigned int GLuint; -typedef khronos_int32_t GLclampx; -typedef int GLsizei; -typedef khronos_float_t GLfloat; -typedef khronos_float_t GLclampf; -typedef double GLdouble; -typedef double GLclampd; -typedef void *GLeglClientBufferEXT; -typedef void *GLeglImageOES; -typedef char GLchar; -typedef char GLcharARB; -#ifdef __APPLE__ -typedef void *GLhandleARB; -#else -typedef unsigned int GLhandleARB; -#endif -typedef khronos_uint16_t GLhalf; -typedef khronos_uint16_t GLhalfARB; -typedef khronos_int32_t GLfixed; -typedef khronos_intptr_t GLintptr; -typedef khronos_intptr_t GLintptrARB; -typedef khronos_ssize_t GLsizeiptr; -typedef khronos_ssize_t GLsizeiptrARB; -typedef khronos_int64_t GLint64; -typedef khronos_int64_t GLint64EXT; -typedef khronos_uint64_t GLuint64; -typedef khronos_uint64_t GLuint64EXT; -typedef struct __GLsync *GLsync; -struct _cl_context; -struct _cl_event; -typedef void (APIENTRY *GLDEBUGPROC)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); -typedef void (APIENTRY *GLDEBUGPROCARB)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); -typedef void (APIENTRY *GLDEBUGPROCKHR)(GLenum source,GLenum type,GLuint id,GLenum severity,GLsizei length,const GLchar *message,const void *userParam); -typedef void (APIENTRY *GLDEBUGPROCAMD)(GLuint id,GLenum category,GLenum severity,GLsizei length,const GLchar *message,void *userParam); -typedef unsigned short GLhalfNV; -typedef GLintptr GLvdpauSurfaceNV; -typedef void (APIENTRY *GLVULKANPROCNV)(void); -#define GL_DEPTH_BUFFER_BIT 0x00000100 -#define GL_STENCIL_BUFFER_BIT 0x00000400 -#define GL_COLOR_BUFFER_BIT 0x00004000 -#define GL_FALSE 0 -#define GL_TRUE 1 -#define GL_POINTS 0x0000 -#define GL_LINES 0x0001 -#define GL_LINE_LOOP 0x0002 -#define GL_LINE_STRIP 0x0003 -#define GL_TRIANGLES 0x0004 -#define GL_TRIANGLE_STRIP 0x0005 -#define GL_TRIANGLE_FAN 0x0006 -#define GL_QUADS 0x0007 -#define GL_NEVER 0x0200 -#define GL_LESS 0x0201 -#define GL_EQUAL 0x0202 -#define GL_LEQUAL 0x0203 -#define GL_GREATER 0x0204 -#define GL_NOTEQUAL 0x0205 -#define GL_GEQUAL 0x0206 -#define GL_ALWAYS 0x0207 -#define GL_ZERO 0 -#define GL_ONE 1 -#define GL_SRC_COLOR 0x0300 -#define GL_ONE_MINUS_SRC_COLOR 0x0301 -#define GL_SRC_ALPHA 0x0302 -#define GL_ONE_MINUS_SRC_ALPHA 0x0303 -#define GL_DST_ALPHA 0x0304 -#define GL_ONE_MINUS_DST_ALPHA 0x0305 -#define GL_DST_COLOR 0x0306 -#define GL_ONE_MINUS_DST_COLOR 0x0307 -#define GL_SRC_ALPHA_SATURATE 0x0308 -#define GL_NONE 0 -#define GL_FRONT_LEFT 0x0400 -#define GL_FRONT_RIGHT 0x0401 -#define GL_BACK_LEFT 0x0402 -#define GL_BACK_RIGHT 0x0403 -#define GL_FRONT 0x0404 -#define GL_BACK 0x0405 -#define GL_LEFT 0x0406 -#define GL_RIGHT 0x0407 -#define GL_FRONT_AND_BACK 0x0408 -#define GL_NO_ERROR 0 -#define GL_INVALID_ENUM 0x0500 -#define GL_INVALID_VALUE 0x0501 -#define GL_INVALID_OPERATION 0x0502 -#define GL_OUT_OF_MEMORY 0x0505 -#define GL_CW 0x0900 -#define GL_CCW 0x0901 -#define GL_POINT_SIZE 0x0B11 -#define GL_POINT_SIZE_RANGE 0x0B12 -#define GL_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_LINE_SMOOTH 0x0B20 -#define GL_LINE_WIDTH 0x0B21 -#define GL_LINE_WIDTH_RANGE 0x0B22 -#define GL_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_POLYGON_MODE 0x0B40 -#define GL_POLYGON_SMOOTH 0x0B41 -#define GL_CULL_FACE 0x0B44 -#define GL_CULL_FACE_MODE 0x0B45 -#define GL_FRONT_FACE 0x0B46 -#define GL_DEPTH_RANGE 0x0B70 -#define GL_DEPTH_TEST 0x0B71 -#define GL_DEPTH_WRITEMASK 0x0B72 -#define GL_DEPTH_CLEAR_VALUE 0x0B73 -#define GL_DEPTH_FUNC 0x0B74 -#define GL_STENCIL_TEST 0x0B90 -#define GL_STENCIL_CLEAR_VALUE 0x0B91 -#define GL_STENCIL_FUNC 0x0B92 -#define GL_STENCIL_VALUE_MASK 0x0B93 -#define GL_STENCIL_FAIL 0x0B94 -#define GL_STENCIL_PASS_DEPTH_FAIL 0x0B95 -#define GL_STENCIL_PASS_DEPTH_PASS 0x0B96 -#define GL_STENCIL_REF 0x0B97 -#define GL_STENCIL_WRITEMASK 0x0B98 -#define GL_VIEWPORT 0x0BA2 -#define GL_DITHER 0x0BD0 -#define GL_BLEND_DST 0x0BE0 -#define GL_BLEND_SRC 0x0BE1 -#define GL_BLEND 0x0BE2 -#define GL_LOGIC_OP_MODE 0x0BF0 -#define GL_DRAW_BUFFER 0x0C01 -#define GL_READ_BUFFER 0x0C02 -#define GL_SCISSOR_BOX 0x0C10 -#define GL_SCISSOR_TEST 0x0C11 -#define GL_COLOR_CLEAR_VALUE 0x0C22 -#define GL_COLOR_WRITEMASK 0x0C23 -#define GL_DOUBLEBUFFER 0x0C32 -#define GL_STEREO 0x0C33 -#define GL_LINE_SMOOTH_HINT 0x0C52 -#define GL_POLYGON_SMOOTH_HINT 0x0C53 -#define GL_UNPACK_SWAP_BYTES 0x0CF0 -#define GL_UNPACK_LSB_FIRST 0x0CF1 -#define GL_UNPACK_ROW_LENGTH 0x0CF2 -#define GL_UNPACK_SKIP_ROWS 0x0CF3 -#define GL_UNPACK_SKIP_PIXELS 0x0CF4 -#define GL_UNPACK_ALIGNMENT 0x0CF5 -#define GL_PACK_SWAP_BYTES 0x0D00 -#define GL_PACK_LSB_FIRST 0x0D01 -#define GL_PACK_ROW_LENGTH 0x0D02 -#define GL_PACK_SKIP_ROWS 0x0D03 -#define GL_PACK_SKIP_PIXELS 0x0D04 -#define GL_PACK_ALIGNMENT 0x0D05 -#define GL_MAX_TEXTURE_SIZE 0x0D33 -#define GL_MAX_VIEWPORT_DIMS 0x0D3A -#define GL_SUBPIXEL_BITS 0x0D50 -#define GL_TEXTURE_1D 0x0DE0 -#define GL_TEXTURE_2D 0x0DE1 -#define GL_TEXTURE_WIDTH 0x1000 -#define GL_TEXTURE_HEIGHT 0x1001 -#define GL_TEXTURE_BORDER_COLOR 0x1004 -#define GL_DONT_CARE 0x1100 -#define GL_FASTEST 0x1101 -#define GL_NICEST 0x1102 -#define GL_BYTE 0x1400 -#define GL_UNSIGNED_BYTE 0x1401 -#define GL_SHORT 0x1402 -#define GL_UNSIGNED_SHORT 0x1403 -#define GL_INT 0x1404 -#define GL_UNSIGNED_INT 0x1405 -#define GL_FLOAT 0x1406 -#define GL_STACK_OVERFLOW 0x0503 -#define GL_STACK_UNDERFLOW 0x0504 -#define GL_CLEAR 0x1500 -#define GL_AND 0x1501 -#define GL_AND_REVERSE 0x1502 -#define GL_COPY 0x1503 -#define GL_AND_INVERTED 0x1504 -#define GL_NOOP 0x1505 -#define GL_XOR 0x1506 -#define GL_OR 0x1507 -#define GL_NOR 0x1508 -#define GL_EQUIV 0x1509 -#define GL_INVERT 0x150A -#define GL_OR_REVERSE 0x150B -#define GL_COPY_INVERTED 0x150C -#define GL_OR_INVERTED 0x150D -#define GL_NAND 0x150E -#define GL_SET 0x150F -#define GL_TEXTURE 0x1702 -#define GL_COLOR 0x1800 -#define GL_DEPTH 0x1801 -#define GL_STENCIL 0x1802 -#define GL_STENCIL_INDEX 0x1901 -#define GL_DEPTH_COMPONENT 0x1902 -#define GL_RED 0x1903 -#define GL_GREEN 0x1904 -#define GL_BLUE 0x1905 -#define GL_ALPHA 0x1906 -#define GL_RGB 0x1907 -#define GL_RGBA 0x1908 -#define GL_POINT 0x1B00 -#define GL_LINE 0x1B01 -#define GL_FILL 0x1B02 -#define GL_KEEP 0x1E00 -#define GL_REPLACE 0x1E01 -#define GL_INCR 0x1E02 -#define GL_DECR 0x1E03 -#define GL_VENDOR 0x1F00 -#define GL_RENDERER 0x1F01 -#define GL_VERSION 0x1F02 -#define GL_EXTENSIONS 0x1F03 -#define GL_NEAREST 0x2600 -#define GL_LINEAR 0x2601 -#define GL_NEAREST_MIPMAP_NEAREST 0x2700 -#define GL_LINEAR_MIPMAP_NEAREST 0x2701 -#define GL_NEAREST_MIPMAP_LINEAR 0x2702 -#define GL_LINEAR_MIPMAP_LINEAR 0x2703 -#define GL_TEXTURE_MAG_FILTER 0x2800 -#define GL_TEXTURE_MIN_FILTER 0x2801 -#define GL_TEXTURE_WRAP_S 0x2802 -#define GL_TEXTURE_WRAP_T 0x2803 -#define GL_REPEAT 0x2901 -#define GL_CURRENT_BIT 0x00000001 -#define GL_POINT_BIT 0x00000002 -#define GL_LINE_BIT 0x00000004 -#define GL_POLYGON_BIT 0x00000008 -#define GL_POLYGON_STIPPLE_BIT 0x00000010 -#define GL_PIXEL_MODE_BIT 0x00000020 -#define GL_LIGHTING_BIT 0x00000040 -#define GL_FOG_BIT 0x00000080 -#define GL_ACCUM_BUFFER_BIT 0x00000200 -#define GL_VIEWPORT_BIT 0x00000800 -#define GL_TRANSFORM_BIT 0x00001000 -#define GL_ENABLE_BIT 0x00002000 -#define GL_HINT_BIT 0x00008000 -#define GL_EVAL_BIT 0x00010000 -#define GL_LIST_BIT 0x00020000 -#define GL_TEXTURE_BIT 0x00040000 -#define GL_SCISSOR_BIT 0x00080000 -#define GL_ALL_ATTRIB_BITS 0xFFFFFFFF -#define GL_QUAD_STRIP 0x0008 -#define GL_POLYGON 0x0009 -#define GL_ACCUM 0x0100 -#define GL_LOAD 0x0101 -#define GL_RETURN 0x0102 -#define GL_MULT 0x0103 -#define GL_ADD 0x0104 -#define GL_AUX0 0x0409 -#define GL_AUX1 0x040A -#define GL_AUX2 0x040B -#define GL_AUX3 0x040C -#define GL_2D 0x0600 -#define GL_3D 0x0601 -#define GL_3D_COLOR 0x0602 -#define GL_3D_COLOR_TEXTURE 0x0603 -#define GL_4D_COLOR_TEXTURE 0x0604 -#define GL_PASS_THROUGH_TOKEN 0x0700 -#define GL_POINT_TOKEN 0x0701 -#define GL_LINE_TOKEN 0x0702 -#define GL_POLYGON_TOKEN 0x0703 -#define GL_BITMAP_TOKEN 0x0704 -#define GL_DRAW_PIXEL_TOKEN 0x0705 -#define GL_COPY_PIXEL_TOKEN 0x0706 -#define GL_LINE_RESET_TOKEN 0x0707 -#define GL_EXP 0x0800 -#define GL_EXP2 0x0801 -#define GL_COEFF 0x0A00 -#define GL_ORDER 0x0A01 -#define GL_DOMAIN 0x0A02 -#define GL_PIXEL_MAP_I_TO_I 0x0C70 -#define GL_PIXEL_MAP_S_TO_S 0x0C71 -#define GL_PIXEL_MAP_I_TO_R 0x0C72 -#define GL_PIXEL_MAP_I_TO_G 0x0C73 -#define GL_PIXEL_MAP_I_TO_B 0x0C74 -#define GL_PIXEL_MAP_I_TO_A 0x0C75 -#define GL_PIXEL_MAP_R_TO_R 0x0C76 -#define GL_PIXEL_MAP_G_TO_G 0x0C77 -#define GL_PIXEL_MAP_B_TO_B 0x0C78 -#define GL_PIXEL_MAP_A_TO_A 0x0C79 -#define GL_CURRENT_COLOR 0x0B00 -#define GL_CURRENT_INDEX 0x0B01 -#define GL_CURRENT_NORMAL 0x0B02 -#define GL_CURRENT_TEXTURE_COORDS 0x0B03 -#define GL_CURRENT_RASTER_COLOR 0x0B04 -#define GL_CURRENT_RASTER_INDEX 0x0B05 -#define GL_CURRENT_RASTER_TEXTURE_COORDS 0x0B06 -#define GL_CURRENT_RASTER_POSITION 0x0B07 -#define GL_CURRENT_RASTER_POSITION_VALID 0x0B08 -#define GL_CURRENT_RASTER_DISTANCE 0x0B09 -#define GL_POINT_SMOOTH 0x0B10 -#define GL_LINE_STIPPLE 0x0B24 -#define GL_LINE_STIPPLE_PATTERN 0x0B25 -#define GL_LINE_STIPPLE_REPEAT 0x0B26 -#define GL_LIST_MODE 0x0B30 -#define GL_MAX_LIST_NESTING 0x0B31 -#define GL_LIST_BASE 0x0B32 -#define GL_LIST_INDEX 0x0B33 -#define GL_POLYGON_STIPPLE 0x0B42 -#define GL_EDGE_FLAG 0x0B43 -#define GL_LIGHTING 0x0B50 -#define GL_LIGHT_MODEL_LOCAL_VIEWER 0x0B51 -#define GL_LIGHT_MODEL_TWO_SIDE 0x0B52 -#define GL_LIGHT_MODEL_AMBIENT 0x0B53 -#define GL_SHADE_MODEL 0x0B54 -#define GL_COLOR_MATERIAL_FACE 0x0B55 -#define GL_COLOR_MATERIAL_PARAMETER 0x0B56 -#define GL_COLOR_MATERIAL 0x0B57 -#define GL_FOG 0x0B60 -#define GL_FOG_INDEX 0x0B61 -#define GL_FOG_DENSITY 0x0B62 -#define GL_FOG_START 0x0B63 -#define GL_FOG_END 0x0B64 -#define GL_FOG_MODE 0x0B65 -#define GL_FOG_COLOR 0x0B66 -#define GL_ACCUM_CLEAR_VALUE 0x0B80 -#define GL_MATRIX_MODE 0x0BA0 -#define GL_NORMALIZE 0x0BA1 -#define GL_MODELVIEW_STACK_DEPTH 0x0BA3 -#define GL_PROJECTION_STACK_DEPTH 0x0BA4 -#define GL_TEXTURE_STACK_DEPTH 0x0BA5 -#define GL_MODELVIEW_MATRIX 0x0BA6 -#define GL_PROJECTION_MATRIX 0x0BA7 -#define GL_TEXTURE_MATRIX 0x0BA8 -#define GL_ATTRIB_STACK_DEPTH 0x0BB0 -#define GL_ALPHA_TEST 0x0BC0 -#define GL_ALPHA_TEST_FUNC 0x0BC1 -#define GL_ALPHA_TEST_REF 0x0BC2 -#define GL_LOGIC_OP 0x0BF1 -#define GL_AUX_BUFFERS 0x0C00 -#define GL_INDEX_CLEAR_VALUE 0x0C20 -#define GL_INDEX_WRITEMASK 0x0C21 -#define GL_INDEX_MODE 0x0C30 -#define GL_RGBA_MODE 0x0C31 -#define GL_RENDER_MODE 0x0C40 -#define GL_PERSPECTIVE_CORRECTION_HINT 0x0C50 -#define GL_POINT_SMOOTH_HINT 0x0C51 -#define GL_FOG_HINT 0x0C54 -#define GL_TEXTURE_GEN_S 0x0C60 -#define GL_TEXTURE_GEN_T 0x0C61 -#define GL_TEXTURE_GEN_R 0x0C62 -#define GL_TEXTURE_GEN_Q 0x0C63 -#define GL_PIXEL_MAP_I_TO_I_SIZE 0x0CB0 -#define GL_PIXEL_MAP_S_TO_S_SIZE 0x0CB1 -#define GL_PIXEL_MAP_I_TO_R_SIZE 0x0CB2 -#define GL_PIXEL_MAP_I_TO_G_SIZE 0x0CB3 -#define GL_PIXEL_MAP_I_TO_B_SIZE 0x0CB4 -#define GL_PIXEL_MAP_I_TO_A_SIZE 0x0CB5 -#define GL_PIXEL_MAP_R_TO_R_SIZE 0x0CB6 -#define GL_PIXEL_MAP_G_TO_G_SIZE 0x0CB7 -#define GL_PIXEL_MAP_B_TO_B_SIZE 0x0CB8 -#define GL_PIXEL_MAP_A_TO_A_SIZE 0x0CB9 -#define GL_MAP_COLOR 0x0D10 -#define GL_MAP_STENCIL 0x0D11 -#define GL_INDEX_SHIFT 0x0D12 -#define GL_INDEX_OFFSET 0x0D13 -#define GL_RED_SCALE 0x0D14 -#define GL_RED_BIAS 0x0D15 -#define GL_ZOOM_X 0x0D16 -#define GL_ZOOM_Y 0x0D17 -#define GL_GREEN_SCALE 0x0D18 -#define GL_GREEN_BIAS 0x0D19 -#define GL_BLUE_SCALE 0x0D1A -#define GL_BLUE_BIAS 0x0D1B -#define GL_ALPHA_SCALE 0x0D1C -#define GL_ALPHA_BIAS 0x0D1D -#define GL_DEPTH_SCALE 0x0D1E -#define GL_DEPTH_BIAS 0x0D1F -#define GL_MAX_EVAL_ORDER 0x0D30 -#define GL_MAX_LIGHTS 0x0D31 -#define GL_MAX_CLIP_PLANES 0x0D32 -#define GL_MAX_PIXEL_MAP_TABLE 0x0D34 -#define GL_MAX_ATTRIB_STACK_DEPTH 0x0D35 -#define GL_MAX_MODELVIEW_STACK_DEPTH 0x0D36 -#define GL_MAX_NAME_STACK_DEPTH 0x0D37 -#define GL_MAX_PROJECTION_STACK_DEPTH 0x0D38 -#define GL_MAX_TEXTURE_STACK_DEPTH 0x0D39 -#define GL_INDEX_BITS 0x0D51 -#define GL_RED_BITS 0x0D52 -#define GL_GREEN_BITS 0x0D53 -#define GL_BLUE_BITS 0x0D54 -#define GL_ALPHA_BITS 0x0D55 -#define GL_DEPTH_BITS 0x0D56 -#define GL_STENCIL_BITS 0x0D57 -#define GL_ACCUM_RED_BITS 0x0D58 -#define GL_ACCUM_GREEN_BITS 0x0D59 -#define GL_ACCUM_BLUE_BITS 0x0D5A -#define GL_ACCUM_ALPHA_BITS 0x0D5B -#define GL_NAME_STACK_DEPTH 0x0D70 -#define GL_AUTO_NORMAL 0x0D80 -#define GL_MAP1_COLOR_4 0x0D90 -#define GL_MAP1_INDEX 0x0D91 -#define GL_MAP1_NORMAL 0x0D92 -#define GL_MAP1_TEXTURE_COORD_1 0x0D93 -#define GL_MAP1_TEXTURE_COORD_2 0x0D94 -#define GL_MAP1_TEXTURE_COORD_3 0x0D95 -#define GL_MAP1_TEXTURE_COORD_4 0x0D96 -#define GL_MAP1_VERTEX_3 0x0D97 -#define GL_MAP1_VERTEX_4 0x0D98 -#define GL_MAP2_COLOR_4 0x0DB0 -#define GL_MAP2_INDEX 0x0DB1 -#define GL_MAP2_NORMAL 0x0DB2 -#define GL_MAP2_TEXTURE_COORD_1 0x0DB3 -#define GL_MAP2_TEXTURE_COORD_2 0x0DB4 -#define GL_MAP2_TEXTURE_COORD_3 0x0DB5 -#define GL_MAP2_TEXTURE_COORD_4 0x0DB6 -#define GL_MAP2_VERTEX_3 0x0DB7 -#define GL_MAP2_VERTEX_4 0x0DB8 -#define GL_MAP1_GRID_DOMAIN 0x0DD0 -#define GL_MAP1_GRID_SEGMENTS 0x0DD1 -#define GL_MAP2_GRID_DOMAIN 0x0DD2 -#define GL_MAP2_GRID_SEGMENTS 0x0DD3 -#define GL_TEXTURE_COMPONENTS 0x1003 -#define GL_TEXTURE_BORDER 0x1005 -#define GL_AMBIENT 0x1200 -#define GL_DIFFUSE 0x1201 -#define GL_SPECULAR 0x1202 -#define GL_POSITION 0x1203 -#define GL_SPOT_DIRECTION 0x1204 -#define GL_SPOT_EXPONENT 0x1205 -#define GL_SPOT_CUTOFF 0x1206 -#define GL_CONSTANT_ATTENUATION 0x1207 -#define GL_LINEAR_ATTENUATION 0x1208 -#define GL_QUADRATIC_ATTENUATION 0x1209 -#define GL_COMPILE 0x1300 -#define GL_COMPILE_AND_EXECUTE 0x1301 -#define GL_2_BYTES 0x1407 -#define GL_3_BYTES 0x1408 -#define GL_4_BYTES 0x1409 -#define GL_EMISSION 0x1600 -#define GL_SHININESS 0x1601 -#define GL_AMBIENT_AND_DIFFUSE 0x1602 -#define GL_COLOR_INDEXES 0x1603 -#define GL_MODELVIEW 0x1700 -#define GL_PROJECTION 0x1701 -#define GL_COLOR_INDEX 0x1900 -#define GL_LUMINANCE 0x1909 -#define GL_LUMINANCE_ALPHA 0x190A -#define GL_BITMAP 0x1A00 -#define GL_RENDER 0x1C00 -#define GL_FEEDBACK 0x1C01 -#define GL_SELECT 0x1C02 -#define GL_FLAT 0x1D00 -#define GL_SMOOTH 0x1D01 -#define GL_S 0x2000 -#define GL_T 0x2001 -#define GL_R 0x2002 -#define GL_Q 0x2003 -#define GL_MODULATE 0x2100 -#define GL_DECAL 0x2101 -#define GL_TEXTURE_ENV_MODE 0x2200 -#define GL_TEXTURE_ENV_COLOR 0x2201 -#define GL_TEXTURE_ENV 0x2300 -#define GL_EYE_LINEAR 0x2400 -#define GL_OBJECT_LINEAR 0x2401 -#define GL_SPHERE_MAP 0x2402 -#define GL_TEXTURE_GEN_MODE 0x2500 -#define GL_OBJECT_PLANE 0x2501 -#define GL_EYE_PLANE 0x2502 -#define GL_CLAMP 0x2900 -#define GL_CLIP_PLANE0 0x3000 -#define GL_CLIP_PLANE1 0x3001 -#define GL_CLIP_PLANE2 0x3002 -#define GL_CLIP_PLANE3 0x3003 -#define GL_CLIP_PLANE4 0x3004 -#define GL_CLIP_PLANE5 0x3005 -#define GL_LIGHT0 0x4000 -#define GL_LIGHT1 0x4001 -#define GL_LIGHT2 0x4002 -#define GL_LIGHT3 0x4003 -#define GL_LIGHT4 0x4004 -#define GL_LIGHT5 0x4005 -#define GL_LIGHT6 0x4006 -#define GL_LIGHT7 0x4007 -#define GL_COLOR_LOGIC_OP 0x0BF2 -#define GL_POLYGON_OFFSET_UNITS 0x2A00 -#define GL_POLYGON_OFFSET_POINT 0x2A01 -#define GL_POLYGON_OFFSET_LINE 0x2A02 -#define GL_POLYGON_OFFSET_FILL 0x8037 -#define GL_POLYGON_OFFSET_FACTOR 0x8038 -#define GL_TEXTURE_BINDING_1D 0x8068 -#define GL_TEXTURE_BINDING_2D 0x8069 -#define GL_TEXTURE_INTERNAL_FORMAT 0x1003 -#define GL_TEXTURE_RED_SIZE 0x805C -#define GL_TEXTURE_GREEN_SIZE 0x805D -#define GL_TEXTURE_BLUE_SIZE 0x805E -#define GL_TEXTURE_ALPHA_SIZE 0x805F -#define GL_DOUBLE 0x140A -#define GL_PROXY_TEXTURE_1D 0x8063 -#define GL_PROXY_TEXTURE_2D 0x8064 -#define GL_R3_G3_B2 0x2A10 -#define GL_RGB4 0x804F -#define GL_RGB5 0x8050 -#define GL_RGB8 0x8051 -#define GL_RGB10 0x8052 -#define GL_RGB12 0x8053 -#define GL_RGB16 0x8054 -#define GL_RGBA2 0x8055 -#define GL_RGBA4 0x8056 -#define GL_RGB5_A1 0x8057 -#define GL_RGBA8 0x8058 -#define GL_RGB10_A2 0x8059 -#define GL_RGBA12 0x805A -#define GL_RGBA16 0x805B -#define GL_CLIENT_PIXEL_STORE_BIT 0x00000001 -#define GL_CLIENT_VERTEX_ARRAY_BIT 0x00000002 -#define GL_CLIENT_ALL_ATTRIB_BITS 0xFFFFFFFF -#define GL_VERTEX_ARRAY_POINTER 0x808E -#define GL_NORMAL_ARRAY_POINTER 0x808F -#define GL_COLOR_ARRAY_POINTER 0x8090 -#define GL_INDEX_ARRAY_POINTER 0x8091 -#define GL_TEXTURE_COORD_ARRAY_POINTER 0x8092 -#define GL_EDGE_FLAG_ARRAY_POINTER 0x8093 -#define GL_FEEDBACK_BUFFER_POINTER 0x0DF0 -#define GL_SELECTION_BUFFER_POINTER 0x0DF3 -#define GL_CLIENT_ATTRIB_STACK_DEPTH 0x0BB1 -#define GL_INDEX_LOGIC_OP 0x0BF1 -#define GL_MAX_CLIENT_ATTRIB_STACK_DEPTH 0x0D3B -#define GL_FEEDBACK_BUFFER_SIZE 0x0DF1 -#define GL_FEEDBACK_BUFFER_TYPE 0x0DF2 -#define GL_SELECTION_BUFFER_SIZE 0x0DF4 -#define GL_VERTEX_ARRAY 0x8074 -#define GL_NORMAL_ARRAY 0x8075 -#define GL_COLOR_ARRAY 0x8076 -#define GL_INDEX_ARRAY 0x8077 -#define GL_TEXTURE_COORD_ARRAY 0x8078 -#define GL_EDGE_FLAG_ARRAY 0x8079 -#define GL_VERTEX_ARRAY_SIZE 0x807A -#define GL_VERTEX_ARRAY_TYPE 0x807B -#define GL_VERTEX_ARRAY_STRIDE 0x807C -#define GL_NORMAL_ARRAY_TYPE 0x807E -#define GL_NORMAL_ARRAY_STRIDE 0x807F -#define GL_COLOR_ARRAY_SIZE 0x8081 -#define GL_COLOR_ARRAY_TYPE 0x8082 -#define GL_COLOR_ARRAY_STRIDE 0x8083 -#define GL_INDEX_ARRAY_TYPE 0x8085 -#define GL_INDEX_ARRAY_STRIDE 0x8086 -#define GL_TEXTURE_COORD_ARRAY_SIZE 0x8088 -#define GL_TEXTURE_COORD_ARRAY_TYPE 0x8089 -#define GL_TEXTURE_COORD_ARRAY_STRIDE 0x808A -#define GL_EDGE_FLAG_ARRAY_STRIDE 0x808C -#define GL_TEXTURE_LUMINANCE_SIZE 0x8060 -#define GL_TEXTURE_INTENSITY_SIZE 0x8061 -#define GL_TEXTURE_PRIORITY 0x8066 -#define GL_TEXTURE_RESIDENT 0x8067 -#define GL_ALPHA4 0x803B -#define GL_ALPHA8 0x803C -#define GL_ALPHA12 0x803D -#define GL_ALPHA16 0x803E -#define GL_LUMINANCE4 0x803F -#define GL_LUMINANCE8 0x8040 -#define GL_LUMINANCE12 0x8041 -#define GL_LUMINANCE16 0x8042 -#define GL_LUMINANCE4_ALPHA4 0x8043 -#define GL_LUMINANCE6_ALPHA2 0x8044 -#define GL_LUMINANCE8_ALPHA8 0x8045 -#define GL_LUMINANCE12_ALPHA4 0x8046 -#define GL_LUMINANCE12_ALPHA12 0x8047 -#define GL_LUMINANCE16_ALPHA16 0x8048 -#define GL_INTENSITY 0x8049 -#define GL_INTENSITY4 0x804A -#define GL_INTENSITY8 0x804B -#define GL_INTENSITY12 0x804C -#define GL_INTENSITY16 0x804D -#define GL_V2F 0x2A20 -#define GL_V3F 0x2A21 -#define GL_C4UB_V2F 0x2A22 -#define GL_C4UB_V3F 0x2A23 -#define GL_C3F_V3F 0x2A24 -#define GL_N3F_V3F 0x2A25 -#define GL_C4F_N3F_V3F 0x2A26 -#define GL_T2F_V3F 0x2A27 -#define GL_T4F_V4F 0x2A28 -#define GL_T2F_C4UB_V3F 0x2A29 -#define GL_T2F_C3F_V3F 0x2A2A -#define GL_T2F_N3F_V3F 0x2A2B -#define GL_T2F_C4F_N3F_V3F 0x2A2C -#define GL_T4F_C4F_N3F_V4F 0x2A2D -#define GL_UNSIGNED_BYTE_3_3_2 0x8032 -#define GL_UNSIGNED_SHORT_4_4_4_4 0x8033 -#define GL_UNSIGNED_SHORT_5_5_5_1 0x8034 -#define GL_UNSIGNED_INT_8_8_8_8 0x8035 -#define GL_UNSIGNED_INT_10_10_10_2 0x8036 -#define GL_TEXTURE_BINDING_3D 0x806A -#define GL_PACK_SKIP_IMAGES 0x806B -#define GL_PACK_IMAGE_HEIGHT 0x806C -#define GL_UNPACK_SKIP_IMAGES 0x806D -#define GL_UNPACK_IMAGE_HEIGHT 0x806E -#define GL_TEXTURE_3D 0x806F -#define GL_PROXY_TEXTURE_3D 0x8070 -#define GL_TEXTURE_DEPTH 0x8071 -#define GL_TEXTURE_WRAP_R 0x8072 -#define GL_MAX_3D_TEXTURE_SIZE 0x8073 -#define GL_UNSIGNED_BYTE_2_3_3_REV 0x8362 -#define GL_UNSIGNED_SHORT_5_6_5 0x8363 -#define GL_UNSIGNED_SHORT_5_6_5_REV 0x8364 -#define GL_UNSIGNED_SHORT_4_4_4_4_REV 0x8365 -#define GL_UNSIGNED_SHORT_1_5_5_5_REV 0x8366 -#define GL_UNSIGNED_INT_8_8_8_8_REV 0x8367 -#define GL_UNSIGNED_INT_2_10_10_10_REV 0x8368 -#define GL_BGR 0x80E0 -#define GL_BGRA 0x80E1 -#define GL_MAX_ELEMENTS_VERTICES 0x80E8 -#define GL_MAX_ELEMENTS_INDICES 0x80E9 -#define GL_CLAMP_TO_EDGE 0x812F -#define GL_TEXTURE_MIN_LOD 0x813A -#define GL_TEXTURE_MAX_LOD 0x813B -#define GL_TEXTURE_BASE_LEVEL 0x813C -#define GL_TEXTURE_MAX_LEVEL 0x813D -#define GL_SMOOTH_POINT_SIZE_RANGE 0x0B12 -#define GL_SMOOTH_POINT_SIZE_GRANULARITY 0x0B13 -#define GL_SMOOTH_LINE_WIDTH_RANGE 0x0B22 -#define GL_SMOOTH_LINE_WIDTH_GRANULARITY 0x0B23 -#define GL_ALIASED_LINE_WIDTH_RANGE 0x846E -#define GL_RESCALE_NORMAL 0x803A -#define GL_LIGHT_MODEL_COLOR_CONTROL 0x81F8 -#define GL_SINGLE_COLOR 0x81F9 -#define GL_SEPARATE_SPECULAR_COLOR 0x81FA -#define GL_ALIASED_POINT_SIZE_RANGE 0x846D -#define GL_TEXTURE0 0x84C0 -#define GL_TEXTURE1 0x84C1 -#define GL_TEXTURE2 0x84C2 -#define GL_TEXTURE3 0x84C3 -#define GL_TEXTURE4 0x84C4 -#define GL_TEXTURE5 0x84C5 -#define GL_TEXTURE6 0x84C6 -#define GL_TEXTURE7 0x84C7 -#define GL_TEXTURE8 0x84C8 -#define GL_TEXTURE9 0x84C9 -#define GL_TEXTURE10 0x84CA -#define GL_TEXTURE11 0x84CB -#define GL_TEXTURE12 0x84CC -#define GL_TEXTURE13 0x84CD -#define GL_TEXTURE14 0x84CE -#define GL_TEXTURE15 0x84CF -#define GL_TEXTURE16 0x84D0 -#define GL_TEXTURE17 0x84D1 -#define GL_TEXTURE18 0x84D2 -#define GL_TEXTURE19 0x84D3 -#define GL_TEXTURE20 0x84D4 -#define GL_TEXTURE21 0x84D5 -#define GL_TEXTURE22 0x84D6 -#define GL_TEXTURE23 0x84D7 -#define GL_TEXTURE24 0x84D8 -#define GL_TEXTURE25 0x84D9 -#define GL_TEXTURE26 0x84DA -#define GL_TEXTURE27 0x84DB -#define GL_TEXTURE28 0x84DC -#define GL_TEXTURE29 0x84DD -#define GL_TEXTURE30 0x84DE -#define GL_TEXTURE31 0x84DF -#define GL_ACTIVE_TEXTURE 0x84E0 -#define GL_MULTISAMPLE 0x809D -#define GL_SAMPLE_ALPHA_TO_COVERAGE 0x809E -#define GL_SAMPLE_ALPHA_TO_ONE 0x809F -#define GL_SAMPLE_COVERAGE 0x80A0 -#define GL_SAMPLE_BUFFERS 0x80A8 -#define GL_SAMPLES 0x80A9 -#define GL_SAMPLE_COVERAGE_VALUE 0x80AA -#define GL_SAMPLE_COVERAGE_INVERT 0x80AB -#define GL_TEXTURE_CUBE_MAP 0x8513 -#define GL_TEXTURE_BINDING_CUBE_MAP 0x8514 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_X 0x8515 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_X 0x8516 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Y 0x8517 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Y 0x8518 -#define GL_TEXTURE_CUBE_MAP_POSITIVE_Z 0x8519 -#define GL_TEXTURE_CUBE_MAP_NEGATIVE_Z 0x851A -#define GL_PROXY_TEXTURE_CUBE_MAP 0x851B -#define GL_MAX_CUBE_MAP_TEXTURE_SIZE 0x851C -#define GL_COMPRESSED_RGB 0x84ED -#define GL_COMPRESSED_RGBA 0x84EE -#define GL_TEXTURE_COMPRESSION_HINT 0x84EF -#define GL_TEXTURE_COMPRESSED_IMAGE_SIZE 0x86A0 -#define GL_TEXTURE_COMPRESSED 0x86A1 -#define GL_NUM_COMPRESSED_TEXTURE_FORMATS 0x86A2 -#define GL_COMPRESSED_TEXTURE_FORMATS 0x86A3 -#define GL_CLAMP_TO_BORDER 0x812D -#define GL_CLIENT_ACTIVE_TEXTURE 0x84E1 -#define GL_MAX_TEXTURE_UNITS 0x84E2 -#define GL_TRANSPOSE_MODELVIEW_MATRIX 0x84E3 -#define GL_TRANSPOSE_PROJECTION_MATRIX 0x84E4 -#define GL_TRANSPOSE_TEXTURE_MATRIX 0x84E5 -#define GL_TRANSPOSE_COLOR_MATRIX 0x84E6 -#define GL_MULTISAMPLE_BIT 0x20000000 -#define GL_NORMAL_MAP 0x8511 -#define GL_REFLECTION_MAP 0x8512 -#define GL_COMPRESSED_ALPHA 0x84E9 -#define GL_COMPRESSED_LUMINANCE 0x84EA -#define GL_COMPRESSED_LUMINANCE_ALPHA 0x84EB -#define GL_COMPRESSED_INTENSITY 0x84EC -#define GL_COMBINE 0x8570 -#define GL_COMBINE_RGB 0x8571 -#define GL_COMBINE_ALPHA 0x8572 -#define GL_SOURCE0_RGB 0x8580 -#define GL_SOURCE1_RGB 0x8581 -#define GL_SOURCE2_RGB 0x8582 -#define GL_SOURCE0_ALPHA 0x8588 -#define GL_SOURCE1_ALPHA 0x8589 -#define GL_SOURCE2_ALPHA 0x858A -#define GL_OPERAND0_RGB 0x8590 -#define GL_OPERAND1_RGB 0x8591 -#define GL_OPERAND2_RGB 0x8592 -#define GL_OPERAND0_ALPHA 0x8598 -#define GL_OPERAND1_ALPHA 0x8599 -#define GL_OPERAND2_ALPHA 0x859A -#define GL_RGB_SCALE 0x8573 -#define GL_ADD_SIGNED 0x8574 -#define GL_INTERPOLATE 0x8575 -#define GL_SUBTRACT 0x84E7 -#define GL_CONSTANT 0x8576 -#define GL_PRIMARY_COLOR 0x8577 -#define GL_PREVIOUS 0x8578 -#define GL_DOT3_RGB 0x86AE -#define GL_DOT3_RGBA 0x86AF -#define GL_BLEND_DST_RGB 0x80C8 -#define GL_BLEND_SRC_RGB 0x80C9 -#define GL_BLEND_DST_ALPHA 0x80CA -#define GL_BLEND_SRC_ALPHA 0x80CB -#define GL_POINT_FADE_THRESHOLD_SIZE 0x8128 -#define GL_DEPTH_COMPONENT16 0x81A5 -#define GL_DEPTH_COMPONENT24 0x81A6 -#define GL_DEPTH_COMPONENT32 0x81A7 -#define GL_MIRRORED_REPEAT 0x8370 -#define GL_MAX_TEXTURE_LOD_BIAS 0x84FD -#define GL_TEXTURE_LOD_BIAS 0x8501 -#define GL_INCR_WRAP 0x8507 -#define GL_DECR_WRAP 0x8508 -#define GL_TEXTURE_DEPTH_SIZE 0x884A -#define GL_TEXTURE_COMPARE_MODE 0x884C -#define GL_TEXTURE_COMPARE_FUNC 0x884D -#define GL_POINT_SIZE_MIN 0x8126 -#define GL_POINT_SIZE_MAX 0x8127 -#define GL_POINT_DISTANCE_ATTENUATION 0x8129 -#define GL_GENERATE_MIPMAP 0x8191 -#define GL_GENERATE_MIPMAP_HINT 0x8192 -#define GL_FOG_COORDINATE_SOURCE 0x8450 -#define GL_FOG_COORDINATE 0x8451 -#define GL_FRAGMENT_DEPTH 0x8452 -#define GL_CURRENT_FOG_COORDINATE 0x8453 -#define GL_FOG_COORDINATE_ARRAY_TYPE 0x8454 -#define GL_FOG_COORDINATE_ARRAY_STRIDE 0x8455 -#define GL_FOG_COORDINATE_ARRAY_POINTER 0x8456 -#define GL_FOG_COORDINATE_ARRAY 0x8457 -#define GL_COLOR_SUM 0x8458 -#define GL_CURRENT_SECONDARY_COLOR 0x8459 -#define GL_SECONDARY_COLOR_ARRAY_SIZE 0x845A -#define GL_SECONDARY_COLOR_ARRAY_TYPE 0x845B -#define GL_SECONDARY_COLOR_ARRAY_STRIDE 0x845C -#define GL_SECONDARY_COLOR_ARRAY_POINTER 0x845D -#define GL_SECONDARY_COLOR_ARRAY 0x845E -#define GL_TEXTURE_FILTER_CONTROL 0x8500 -#define GL_DEPTH_TEXTURE_MODE 0x884B -#define GL_COMPARE_R_TO_TEXTURE 0x884E -#define GL_BLEND_COLOR 0x8005 -#define GL_BLEND_EQUATION 0x8009 -#define GL_CONSTANT_COLOR 0x8001 -#define GL_ONE_MINUS_CONSTANT_COLOR 0x8002 -#define GL_CONSTANT_ALPHA 0x8003 -#define GL_ONE_MINUS_CONSTANT_ALPHA 0x8004 -#define GL_FUNC_ADD 0x8006 -#define GL_FUNC_REVERSE_SUBTRACT 0x800B -#define GL_FUNC_SUBTRACT 0x800A -#define GL_MIN 0x8007 -#define GL_MAX 0x8008 -#define GL_BUFFER_SIZE 0x8764 -#define GL_BUFFER_USAGE 0x8765 -#define GL_QUERY_COUNTER_BITS 0x8864 -#define GL_CURRENT_QUERY 0x8865 -#define GL_QUERY_RESULT 0x8866 -#define GL_QUERY_RESULT_AVAILABLE 0x8867 -#define GL_ARRAY_BUFFER 0x8892 -#define GL_ELEMENT_ARRAY_BUFFER 0x8893 -#define GL_ARRAY_BUFFER_BINDING 0x8894 -#define GL_ELEMENT_ARRAY_BUFFER_BINDING 0x8895 -#define GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING 0x889F -#define GL_READ_ONLY 0x88B8 -#define GL_WRITE_ONLY 0x88B9 -#define GL_READ_WRITE 0x88BA -#define GL_BUFFER_ACCESS 0x88BB -#define GL_BUFFER_MAPPED 0x88BC -#define GL_BUFFER_MAP_POINTER 0x88BD -#define GL_STREAM_DRAW 0x88E0 -#define GL_STREAM_READ 0x88E1 -#define GL_STREAM_COPY 0x88E2 -#define GL_STATIC_DRAW 0x88E4 -#define GL_STATIC_READ 0x88E5 -#define GL_STATIC_COPY 0x88E6 -#define GL_DYNAMIC_DRAW 0x88E8 -#define GL_DYNAMIC_READ 0x88E9 -#define GL_DYNAMIC_COPY 0x88EA -#define GL_SAMPLES_PASSED 0x8914 -#define GL_SRC1_ALPHA 0x8589 -#define GL_VERTEX_ARRAY_BUFFER_BINDING 0x8896 -#define GL_NORMAL_ARRAY_BUFFER_BINDING 0x8897 -#define GL_COLOR_ARRAY_BUFFER_BINDING 0x8898 -#define GL_INDEX_ARRAY_BUFFER_BINDING 0x8899 -#define GL_TEXTURE_COORD_ARRAY_BUFFER_BINDING 0x889A -#define GL_EDGE_FLAG_ARRAY_BUFFER_BINDING 0x889B -#define GL_SECONDARY_COLOR_ARRAY_BUFFER_BINDING 0x889C -#define GL_FOG_COORDINATE_ARRAY_BUFFER_BINDING 0x889D -#define GL_WEIGHT_ARRAY_BUFFER_BINDING 0x889E -#define GL_FOG_COORD_SRC 0x8450 -#define GL_FOG_COORD 0x8451 -#define GL_CURRENT_FOG_COORD 0x8453 -#define GL_FOG_COORD_ARRAY_TYPE 0x8454 -#define GL_FOG_COORD_ARRAY_STRIDE 0x8455 -#define GL_FOG_COORD_ARRAY_POINTER 0x8456 -#define GL_FOG_COORD_ARRAY 0x8457 -#define GL_FOG_COORD_ARRAY_BUFFER_BINDING 0x889D -#define GL_SRC0_RGB 0x8580 -#define GL_SRC1_RGB 0x8581 -#define GL_SRC2_RGB 0x8582 -#define GL_SRC0_ALPHA 0x8588 -#define GL_SRC2_ALPHA 0x858A -#define GL_BLEND_EQUATION_RGB 0x8009 -#define GL_VERTEX_ATTRIB_ARRAY_ENABLED 0x8622 -#define GL_VERTEX_ATTRIB_ARRAY_SIZE 0x8623 -#define GL_VERTEX_ATTRIB_ARRAY_STRIDE 0x8624 -#define GL_VERTEX_ATTRIB_ARRAY_TYPE 0x8625 -#define GL_CURRENT_VERTEX_ATTRIB 0x8626 -#define GL_VERTEX_PROGRAM_POINT_SIZE 0x8642 -#define GL_VERTEX_ATTRIB_ARRAY_POINTER 0x8645 -#define GL_STENCIL_BACK_FUNC 0x8800 -#define GL_STENCIL_BACK_FAIL 0x8801 -#define GL_STENCIL_BACK_PASS_DEPTH_FAIL 0x8802 -#define GL_STENCIL_BACK_PASS_DEPTH_PASS 0x8803 -#define GL_MAX_DRAW_BUFFERS 0x8824 -#define GL_DRAW_BUFFER0 0x8825 -#define GL_DRAW_BUFFER1 0x8826 -#define GL_DRAW_BUFFER2 0x8827 -#define GL_DRAW_BUFFER3 0x8828 -#define GL_DRAW_BUFFER4 0x8829 -#define GL_DRAW_BUFFER5 0x882A -#define GL_DRAW_BUFFER6 0x882B -#define GL_DRAW_BUFFER7 0x882C -#define GL_DRAW_BUFFER8 0x882D -#define GL_DRAW_BUFFER9 0x882E -#define GL_DRAW_BUFFER10 0x882F -#define GL_DRAW_BUFFER11 0x8830 -#define GL_DRAW_BUFFER12 0x8831 -#define GL_DRAW_BUFFER13 0x8832 -#define GL_DRAW_BUFFER14 0x8833 -#define GL_DRAW_BUFFER15 0x8834 -#define GL_BLEND_EQUATION_ALPHA 0x883D -#define GL_MAX_VERTEX_ATTRIBS 0x8869 -#define GL_VERTEX_ATTRIB_ARRAY_NORMALIZED 0x886A -#define GL_MAX_TEXTURE_IMAGE_UNITS 0x8872 -#define GL_FRAGMENT_SHADER 0x8B30 -#define GL_VERTEX_SHADER 0x8B31 -#define GL_MAX_FRAGMENT_UNIFORM_COMPONENTS 0x8B49 -#define GL_MAX_VERTEX_UNIFORM_COMPONENTS 0x8B4A -#define GL_MAX_VARYING_FLOATS 0x8B4B -#define GL_MAX_VERTEX_TEXTURE_IMAGE_UNITS 0x8B4C -#define GL_MAX_COMBINED_TEXTURE_IMAGE_UNITS 0x8B4D -#define GL_SHADER_TYPE 0x8B4F -#define GL_FLOAT_VEC2 0x8B50 -#define GL_FLOAT_VEC3 0x8B51 -#define GL_FLOAT_VEC4 0x8B52 -#define GL_INT_VEC2 0x8B53 -#define GL_INT_VEC3 0x8B54 -#define GL_INT_VEC4 0x8B55 -#define GL_BOOL 0x8B56 -#define GL_BOOL_VEC2 0x8B57 -#define GL_BOOL_VEC3 0x8B58 -#define GL_BOOL_VEC4 0x8B59 -#define GL_FLOAT_MAT2 0x8B5A -#define GL_FLOAT_MAT3 0x8B5B -#define GL_FLOAT_MAT4 0x8B5C -#define GL_SAMPLER_1D 0x8B5D -#define GL_SAMPLER_2D 0x8B5E -#define GL_SAMPLER_3D 0x8B5F -#define GL_SAMPLER_CUBE 0x8B60 -#define GL_SAMPLER_1D_SHADOW 0x8B61 -#define GL_SAMPLER_2D_SHADOW 0x8B62 -#define GL_DELETE_STATUS 0x8B80 -#define GL_COMPILE_STATUS 0x8B81 -#define GL_LINK_STATUS 0x8B82 -#define GL_VALIDATE_STATUS 0x8B83 -#define GL_INFO_LOG_LENGTH 0x8B84 -#define GL_ATTACHED_SHADERS 0x8B85 -#define GL_ACTIVE_UNIFORMS 0x8B86 -#define GL_ACTIVE_UNIFORM_MAX_LENGTH 0x8B87 -#define GL_SHADER_SOURCE_LENGTH 0x8B88 -#define GL_ACTIVE_ATTRIBUTES 0x8B89 -#define GL_ACTIVE_ATTRIBUTE_MAX_LENGTH 0x8B8A -#define GL_FRAGMENT_SHADER_DERIVATIVE_HINT 0x8B8B -#define GL_SHADING_LANGUAGE_VERSION 0x8B8C -#define GL_CURRENT_PROGRAM 0x8B8D -#define GL_POINT_SPRITE_COORD_ORIGIN 0x8CA0 -#define GL_LOWER_LEFT 0x8CA1 -#define GL_UPPER_LEFT 0x8CA2 -#define GL_STENCIL_BACK_REF 0x8CA3 -#define GL_STENCIL_BACK_VALUE_MASK 0x8CA4 -#define GL_STENCIL_BACK_WRITEMASK 0x8CA5 -#define GL_VERTEX_PROGRAM_TWO_SIDE 0x8643 -#define GL_POINT_SPRITE 0x8861 -#define GL_COORD_REPLACE 0x8862 -#define GL_MAX_TEXTURE_COORDS 0x8871 -#define GL_PIXEL_PACK_BUFFER 0x88EB -#define GL_PIXEL_UNPACK_BUFFER 0x88EC -#define GL_PIXEL_PACK_BUFFER_BINDING 0x88ED -#define GL_PIXEL_UNPACK_BUFFER_BINDING 0x88EF -#define GL_FLOAT_MAT2x3 0x8B65 -#define GL_FLOAT_MAT2x4 0x8B66 -#define GL_FLOAT_MAT3x2 0x8B67 -#define GL_FLOAT_MAT3x4 0x8B68 -#define GL_FLOAT_MAT4x2 0x8B69 -#define GL_FLOAT_MAT4x3 0x8B6A -#define GL_SRGB 0x8C40 -#define GL_SRGB8 0x8C41 -#define GL_SRGB_ALPHA 0x8C42 -#define GL_SRGB8_ALPHA8 0x8C43 -#define GL_COMPRESSED_SRGB 0x8C48 -#define GL_COMPRESSED_SRGB_ALPHA 0x8C49 -#define GL_CURRENT_RASTER_SECONDARY_COLOR 0x845F -#define GL_SLUMINANCE_ALPHA 0x8C44 -#define GL_SLUMINANCE8_ALPHA8 0x8C45 -#define GL_SLUMINANCE 0x8C46 -#define GL_SLUMINANCE8 0x8C47 -#define GL_COMPRESSED_SLUMINANCE 0x8C4A -#define GL_COMPRESSED_SLUMINANCE_ALPHA 0x8C4B -#define GL_COMPARE_REF_TO_TEXTURE 0x884E -#define GL_CLIP_DISTANCE0 0x3000 -#define GL_CLIP_DISTANCE1 0x3001 -#define GL_CLIP_DISTANCE2 0x3002 -#define GL_CLIP_DISTANCE3 0x3003 -#define GL_CLIP_DISTANCE4 0x3004 -#define GL_CLIP_DISTANCE5 0x3005 -#define GL_CLIP_DISTANCE6 0x3006 -#define GL_CLIP_DISTANCE7 0x3007 -#define GL_MAX_CLIP_DISTANCES 0x0D32 -#define GL_MAJOR_VERSION 0x821B -#define GL_MINOR_VERSION 0x821C -#define GL_NUM_EXTENSIONS 0x821D -#define GL_CONTEXT_FLAGS 0x821E -#define GL_COMPRESSED_RED 0x8225 -#define GL_COMPRESSED_RG 0x8226 -#define GL_CONTEXT_FLAG_FORWARD_COMPATIBLE_BIT 0x00000001 -#define GL_RGBA32F 0x8814 -#define GL_RGB32F 0x8815 -#define GL_RGBA16F 0x881A -#define GL_RGB16F 0x881B -#define GL_VERTEX_ATTRIB_ARRAY_INTEGER 0x88FD -#define GL_MAX_ARRAY_TEXTURE_LAYERS 0x88FF -#define GL_MIN_PROGRAM_TEXEL_OFFSET 0x8904 -#define GL_MAX_PROGRAM_TEXEL_OFFSET 0x8905 -#define GL_CLAMP_READ_COLOR 0x891C -#define GL_FIXED_ONLY 0x891D -#define GL_MAX_VARYING_COMPONENTS 0x8B4B -#define GL_TEXTURE_1D_ARRAY 0x8C18 -#define GL_PROXY_TEXTURE_1D_ARRAY 0x8C19 -#define GL_TEXTURE_2D_ARRAY 0x8C1A -#define GL_PROXY_TEXTURE_2D_ARRAY 0x8C1B -#define GL_TEXTURE_BINDING_1D_ARRAY 0x8C1C -#define GL_TEXTURE_BINDING_2D_ARRAY 0x8C1D -#define GL_R11F_G11F_B10F 0x8C3A -#define GL_UNSIGNED_INT_10F_11F_11F_REV 0x8C3B -#define GL_RGB9_E5 0x8C3D -#define GL_UNSIGNED_INT_5_9_9_9_REV 0x8C3E -#define GL_TEXTURE_SHARED_SIZE 0x8C3F -#define GL_TRANSFORM_FEEDBACK_VARYING_MAX_LENGTH 0x8C76 -#define GL_TRANSFORM_FEEDBACK_BUFFER_MODE 0x8C7F -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS 0x8C80 -#define GL_TRANSFORM_FEEDBACK_VARYINGS 0x8C83 -#define GL_TRANSFORM_FEEDBACK_BUFFER_START 0x8C84 -#define GL_TRANSFORM_FEEDBACK_BUFFER_SIZE 0x8C85 -#define GL_PRIMITIVES_GENERATED 0x8C87 -#define GL_TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN 0x8C88 -#define GL_RASTERIZER_DISCARD 0x8C89 -#define GL_MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS 0x8C8A -#define GL_MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS 0x8C8B -#define GL_INTERLEAVED_ATTRIBS 0x8C8C -#define GL_SEPARATE_ATTRIBS 0x8C8D -#define GL_TRANSFORM_FEEDBACK_BUFFER 0x8C8E -#define GL_TRANSFORM_FEEDBACK_BUFFER_BINDING 0x8C8F -#define GL_RGBA32UI 0x8D70 -#define GL_RGB32UI 0x8D71 -#define GL_RGBA16UI 0x8D76 -#define GL_RGB16UI 0x8D77 -#define GL_RGBA8UI 0x8D7C -#define GL_RGB8UI 0x8D7D -#define GL_RGBA32I 0x8D82 -#define GL_RGB32I 0x8D83 -#define GL_RGBA16I 0x8D88 -#define GL_RGB16I 0x8D89 -#define GL_RGBA8I 0x8D8E -#define GL_RGB8I 0x8D8F -#define GL_RED_INTEGER 0x8D94 -#define GL_GREEN_INTEGER 0x8D95 -#define GL_BLUE_INTEGER 0x8D96 -#define GL_RGB_INTEGER 0x8D98 -#define GL_RGBA_INTEGER 0x8D99 -#define GL_BGR_INTEGER 0x8D9A -#define GL_BGRA_INTEGER 0x8D9B -#define GL_SAMPLER_1D_ARRAY 0x8DC0 -#define GL_SAMPLER_2D_ARRAY 0x8DC1 -#define GL_SAMPLER_1D_ARRAY_SHADOW 0x8DC3 -#define GL_SAMPLER_2D_ARRAY_SHADOW 0x8DC4 -#define GL_SAMPLER_CUBE_SHADOW 0x8DC5 -#define GL_UNSIGNED_INT_VEC2 0x8DC6 -#define GL_UNSIGNED_INT_VEC3 0x8DC7 -#define GL_UNSIGNED_INT_VEC4 0x8DC8 -#define GL_INT_SAMPLER_1D 0x8DC9 -#define GL_INT_SAMPLER_2D 0x8DCA -#define GL_INT_SAMPLER_3D 0x8DCB -#define GL_INT_SAMPLER_CUBE 0x8DCC -#define GL_INT_SAMPLER_1D_ARRAY 0x8DCE -#define GL_INT_SAMPLER_2D_ARRAY 0x8DCF -#define GL_UNSIGNED_INT_SAMPLER_1D 0x8DD1 -#define GL_UNSIGNED_INT_SAMPLER_2D 0x8DD2 -#define GL_UNSIGNED_INT_SAMPLER_3D 0x8DD3 -#define GL_UNSIGNED_INT_SAMPLER_CUBE 0x8DD4 -#define GL_UNSIGNED_INT_SAMPLER_1D_ARRAY 0x8DD6 -#define GL_UNSIGNED_INT_SAMPLER_2D_ARRAY 0x8DD7 -#define GL_QUERY_WAIT 0x8E13 -#define GL_QUERY_NO_WAIT 0x8E14 -#define GL_QUERY_BY_REGION_WAIT 0x8E15 -#define GL_QUERY_BY_REGION_NO_WAIT 0x8E16 -#define GL_BUFFER_ACCESS_FLAGS 0x911F -#define GL_BUFFER_MAP_LENGTH 0x9120 -#define GL_BUFFER_MAP_OFFSET 0x9121 -#define GL_DEPTH_COMPONENT32F 0x8CAC -#define GL_DEPTH32F_STENCIL8 0x8CAD -#define GL_FLOAT_32_UNSIGNED_INT_24_8_REV 0x8DAD -#define GL_INVALID_FRAMEBUFFER_OPERATION 0x0506 -#define GL_FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING 0x8210 -#define GL_FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE 0x8211 -#define GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE 0x8212 -#define GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE 0x8213 -#define GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE 0x8214 -#define GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE 0x8215 -#define GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE 0x8216 -#define GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE 0x8217 -#define GL_FRAMEBUFFER_DEFAULT 0x8218 -#define GL_FRAMEBUFFER_UNDEFINED 0x8219 -#define GL_DEPTH_STENCIL_ATTACHMENT 0x821A -#define GL_MAX_RENDERBUFFER_SIZE 0x84E8 -#define GL_DEPTH_STENCIL 0x84F9 -#define GL_UNSIGNED_INT_24_8 0x84FA -#define GL_DEPTH24_STENCIL8 0x88F0 -#define GL_TEXTURE_STENCIL_SIZE 0x88F1 -#define GL_TEXTURE_RED_TYPE 0x8C10 -#define GL_TEXTURE_GREEN_TYPE 0x8C11 -#define GL_TEXTURE_BLUE_TYPE 0x8C12 -#define GL_TEXTURE_ALPHA_TYPE 0x8C13 -#define GL_TEXTURE_DEPTH_TYPE 0x8C16 -#define GL_UNSIGNED_NORMALIZED 0x8C17 -#define GL_FRAMEBUFFER_BINDING 0x8CA6 -#define GL_DRAW_FRAMEBUFFER_BINDING 0x8CA6 -#define GL_RENDERBUFFER_BINDING 0x8CA7 -#define GL_READ_FRAMEBUFFER 0x8CA8 -#define GL_DRAW_FRAMEBUFFER 0x8CA9 -#define GL_READ_FRAMEBUFFER_BINDING 0x8CAA -#define GL_RENDERBUFFER_SAMPLES 0x8CAB -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE 0x8CD0 -#define GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME 0x8CD1 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL 0x8CD2 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE 0x8CD3 -#define GL_FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER 0x8CD4 -#define GL_FRAMEBUFFER_COMPLETE 0x8CD5 -#define GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT 0x8CD6 -#define GL_FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT 0x8CD7 -#define GL_FRAMEBUFFER_INCOMPLETE_DRAW_BUFFER 0x8CDB -#define GL_FRAMEBUFFER_INCOMPLETE_READ_BUFFER 0x8CDC -#define GL_FRAMEBUFFER_UNSUPPORTED 0x8CDD -#define GL_MAX_COLOR_ATTACHMENTS 0x8CDF -#define GL_COLOR_ATTACHMENT0 0x8CE0 -#define GL_COLOR_ATTACHMENT1 0x8CE1 -#define GL_COLOR_ATTACHMENT2 0x8CE2 -#define GL_COLOR_ATTACHMENT3 0x8CE3 -#define GL_COLOR_ATTACHMENT4 0x8CE4 -#define GL_COLOR_ATTACHMENT5 0x8CE5 -#define GL_COLOR_ATTACHMENT6 0x8CE6 -#define GL_COLOR_ATTACHMENT7 0x8CE7 -#define GL_COLOR_ATTACHMENT8 0x8CE8 -#define GL_COLOR_ATTACHMENT9 0x8CE9 -#define GL_COLOR_ATTACHMENT10 0x8CEA -#define GL_COLOR_ATTACHMENT11 0x8CEB -#define GL_COLOR_ATTACHMENT12 0x8CEC -#define GL_COLOR_ATTACHMENT13 0x8CED -#define GL_COLOR_ATTACHMENT14 0x8CEE -#define GL_COLOR_ATTACHMENT15 0x8CEF -#define GL_COLOR_ATTACHMENT16 0x8CF0 -#define GL_COLOR_ATTACHMENT17 0x8CF1 -#define GL_COLOR_ATTACHMENT18 0x8CF2 -#define GL_COLOR_ATTACHMENT19 0x8CF3 -#define GL_COLOR_ATTACHMENT20 0x8CF4 -#define GL_COLOR_ATTACHMENT21 0x8CF5 -#define GL_COLOR_ATTACHMENT22 0x8CF6 -#define GL_COLOR_ATTACHMENT23 0x8CF7 -#define GL_COLOR_ATTACHMENT24 0x8CF8 -#define GL_COLOR_ATTACHMENT25 0x8CF9 -#define GL_COLOR_ATTACHMENT26 0x8CFA -#define GL_COLOR_ATTACHMENT27 0x8CFB -#define GL_COLOR_ATTACHMENT28 0x8CFC -#define GL_COLOR_ATTACHMENT29 0x8CFD -#define GL_COLOR_ATTACHMENT30 0x8CFE -#define GL_COLOR_ATTACHMENT31 0x8CFF -#define GL_DEPTH_ATTACHMENT 0x8D00 -#define GL_STENCIL_ATTACHMENT 0x8D20 -#define GL_FRAMEBUFFER 0x8D40 -#define GL_RENDERBUFFER 0x8D41 -#define GL_RENDERBUFFER_WIDTH 0x8D42 -#define GL_RENDERBUFFER_HEIGHT 0x8D43 -#define GL_RENDERBUFFER_INTERNAL_FORMAT 0x8D44 -#define GL_STENCIL_INDEX1 0x8D46 -#define GL_STENCIL_INDEX4 0x8D47 -#define GL_STENCIL_INDEX8 0x8D48 -#define GL_STENCIL_INDEX16 0x8D49 -#define GL_RENDERBUFFER_RED_SIZE 0x8D50 -#define GL_RENDERBUFFER_GREEN_SIZE 0x8D51 -#define GL_RENDERBUFFER_BLUE_SIZE 0x8D52 -#define GL_RENDERBUFFER_ALPHA_SIZE 0x8D53 -#define GL_RENDERBUFFER_DEPTH_SIZE 0x8D54 -#define GL_RENDERBUFFER_STENCIL_SIZE 0x8D55 -#define GL_FRAMEBUFFER_INCOMPLETE_MULTISAMPLE 0x8D56 -#define GL_MAX_SAMPLES 0x8D57 -#define GL_INDEX 0x8222 -#define GL_TEXTURE_LUMINANCE_TYPE 0x8C14 -#define GL_TEXTURE_INTENSITY_TYPE 0x8C15 -#define GL_FRAMEBUFFER_SRGB 0x8DB9 -#define GL_HALF_FLOAT 0x140B -#define GL_MAP_READ_BIT 0x0001 -#define GL_MAP_WRITE_BIT 0x0002 -#define GL_MAP_INVALIDATE_RANGE_BIT 0x0004 -#define GL_MAP_INVALIDATE_BUFFER_BIT 0x0008 -#define GL_MAP_FLUSH_EXPLICIT_BIT 0x0010 -#define GL_MAP_UNSYNCHRONIZED_BIT 0x0020 -#define GL_COMPRESSED_RED_RGTC1 0x8DBB -#define GL_COMPRESSED_SIGNED_RED_RGTC1 0x8DBC -#define GL_COMPRESSED_RG_RGTC2 0x8DBD -#define GL_COMPRESSED_SIGNED_RG_RGTC2 0x8DBE -#define GL_RG 0x8227 -#define GL_RG_INTEGER 0x8228 -#define GL_R8 0x8229 -#define GL_R16 0x822A -#define GL_RG8 0x822B -#define GL_RG16 0x822C -#define GL_R16F 0x822D -#define GL_R32F 0x822E -#define GL_RG16F 0x822F -#define GL_RG32F 0x8230 -#define GL_R8I 0x8231 -#define GL_R8UI 0x8232 -#define GL_R16I 0x8233 -#define GL_R16UI 0x8234 -#define GL_R32I 0x8235 -#define GL_R32UI 0x8236 -#define GL_RG8I 0x8237 -#define GL_RG8UI 0x8238 -#define GL_RG16I 0x8239 -#define GL_RG16UI 0x823A -#define GL_RG32I 0x823B -#define GL_RG32UI 0x823C -#define GL_VERTEX_ARRAY_BINDING 0x85B5 -#define GL_CLAMP_VERTEX_COLOR 0x891A -#define GL_CLAMP_FRAGMENT_COLOR 0x891B -#define GL_ALPHA_INTEGER 0x8D97 -#define GL_SAMPLER_2D_RECT 0x8B63 -#define GL_SAMPLER_2D_RECT_SHADOW 0x8B64 -#define GL_SAMPLER_BUFFER 0x8DC2 -#define GL_INT_SAMPLER_2D_RECT 0x8DCD -#define GL_INT_SAMPLER_BUFFER 0x8DD0 -#define GL_UNSIGNED_INT_SAMPLER_2D_RECT 0x8DD5 -#define GL_UNSIGNED_INT_SAMPLER_BUFFER 0x8DD8 -#define GL_TEXTURE_BUFFER 0x8C2A -#define GL_MAX_TEXTURE_BUFFER_SIZE 0x8C2B -#define GL_TEXTURE_BINDING_BUFFER 0x8C2C -#define GL_TEXTURE_BUFFER_DATA_STORE_BINDING 0x8C2D -#define GL_TEXTURE_RECTANGLE 0x84F5 -#define GL_TEXTURE_BINDING_RECTANGLE 0x84F6 -#define GL_PROXY_TEXTURE_RECTANGLE 0x84F7 -#define GL_MAX_RECTANGLE_TEXTURE_SIZE 0x84F8 -#define GL_R8_SNORM 0x8F94 -#define GL_RG8_SNORM 0x8F95 -#define GL_RGB8_SNORM 0x8F96 -#define GL_RGBA8_SNORM 0x8F97 -#define GL_R16_SNORM 0x8F98 -#define GL_RG16_SNORM 0x8F99 -#define GL_RGB16_SNORM 0x8F9A -#define GL_RGBA16_SNORM 0x8F9B -#define GL_SIGNED_NORMALIZED 0x8F9C -#define GL_PRIMITIVE_RESTART 0x8F9D -#define GL_PRIMITIVE_RESTART_INDEX 0x8F9E -#define GL_COPY_READ_BUFFER 0x8F36 -#define GL_COPY_WRITE_BUFFER 0x8F37 -#define GL_UNIFORM_BUFFER 0x8A11 -#define GL_UNIFORM_BUFFER_BINDING 0x8A28 -#define GL_UNIFORM_BUFFER_START 0x8A29 -#define GL_UNIFORM_BUFFER_SIZE 0x8A2A -#define GL_MAX_VERTEX_UNIFORM_BLOCKS 0x8A2B -#define GL_MAX_GEOMETRY_UNIFORM_BLOCKS 0x8A2C -#define GL_MAX_FRAGMENT_UNIFORM_BLOCKS 0x8A2D -#define GL_MAX_COMBINED_UNIFORM_BLOCKS 0x8A2E -#define GL_MAX_UNIFORM_BUFFER_BINDINGS 0x8A2F -#define GL_MAX_UNIFORM_BLOCK_SIZE 0x8A30 -#define GL_MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS 0x8A31 -#define GL_MAX_COMBINED_GEOMETRY_UNIFORM_COMPONENTS 0x8A32 -#define GL_MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS 0x8A33 -#define GL_UNIFORM_BUFFER_OFFSET_ALIGNMENT 0x8A34 -#define GL_ACTIVE_UNIFORM_BLOCK_MAX_NAME_LENGTH 0x8A35 -#define GL_ACTIVE_UNIFORM_BLOCKS 0x8A36 -#define GL_UNIFORM_TYPE 0x8A37 -#define GL_UNIFORM_SIZE 0x8A38 -#define GL_UNIFORM_NAME_LENGTH 0x8A39 -#define GL_UNIFORM_BLOCK_INDEX 0x8A3A -#define GL_UNIFORM_OFFSET 0x8A3B -#define GL_UNIFORM_ARRAY_STRIDE 0x8A3C -#define GL_UNIFORM_MATRIX_STRIDE 0x8A3D -#define GL_UNIFORM_IS_ROW_MAJOR 0x8A3E -#define GL_UNIFORM_BLOCK_BINDING 0x8A3F -#define GL_UNIFORM_BLOCK_DATA_SIZE 0x8A40 -#define GL_UNIFORM_BLOCK_NAME_LENGTH 0x8A41 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORMS 0x8A42 -#define GL_UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES 0x8A43 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER 0x8A44 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_GEOMETRY_SHADER 0x8A45 -#define GL_UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER 0x8A46 -#define GL_INVALID_INDEX 0xFFFFFFFF -#define GL_CONTEXT_CORE_PROFILE_BIT 0x00000001 -#define GL_CONTEXT_COMPATIBILITY_PROFILE_BIT 0x00000002 -#define GL_LINES_ADJACENCY 0x000A -#define GL_LINE_STRIP_ADJACENCY 0x000B -#define GL_TRIANGLES_ADJACENCY 0x000C -#define GL_TRIANGLE_STRIP_ADJACENCY 0x000D -#define GL_PROGRAM_POINT_SIZE 0x8642 -#define GL_MAX_GEOMETRY_TEXTURE_IMAGE_UNITS 0x8C29 -#define GL_FRAMEBUFFER_ATTACHMENT_LAYERED 0x8DA7 -#define GL_FRAMEBUFFER_INCOMPLETE_LAYER_TARGETS 0x8DA8 -#define GL_GEOMETRY_SHADER 0x8DD9 -#define GL_GEOMETRY_VERTICES_OUT 0x8916 -#define GL_GEOMETRY_INPUT_TYPE 0x8917 -#define GL_GEOMETRY_OUTPUT_TYPE 0x8918 -#define GL_MAX_GEOMETRY_UNIFORM_COMPONENTS 0x8DDF -#define GL_MAX_GEOMETRY_OUTPUT_VERTICES 0x8DE0 -#define GL_MAX_GEOMETRY_TOTAL_OUTPUT_COMPONENTS 0x8DE1 -#define GL_MAX_VERTEX_OUTPUT_COMPONENTS 0x9122 -#define GL_MAX_GEOMETRY_INPUT_COMPONENTS 0x9123 -#define GL_MAX_GEOMETRY_OUTPUT_COMPONENTS 0x9124 -#define GL_MAX_FRAGMENT_INPUT_COMPONENTS 0x9125 -#define GL_CONTEXT_PROFILE_MASK 0x9126 -#define GL_DEPTH_CLAMP 0x864F -#define GL_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION 0x8E4C -#define GL_FIRST_VERTEX_CONVENTION 0x8E4D -#define GL_LAST_VERTEX_CONVENTION 0x8E4E -#define GL_PROVOKING_VERTEX 0x8E4F -#define GL_TEXTURE_CUBE_MAP_SEAMLESS 0x884F -#define GL_MAX_SERVER_WAIT_TIMEOUT 0x9111 -#define GL_OBJECT_TYPE 0x9112 -#define GL_SYNC_CONDITION 0x9113 -#define GL_SYNC_STATUS 0x9114 -#define GL_SYNC_FLAGS 0x9115 -#define GL_SYNC_FENCE 0x9116 -#define GL_SYNC_GPU_COMMANDS_COMPLETE 0x9117 -#define GL_UNSIGNALED 0x9118 -#define GL_SIGNALED 0x9119 -#define GL_ALREADY_SIGNALED 0x911A -#define GL_TIMEOUT_EXPIRED 0x911B -#define GL_CONDITION_SATISFIED 0x911C -#define GL_WAIT_FAILED 0x911D -#define GL_TIMEOUT_IGNORED 0xFFFFFFFFFFFFFFFF -#define GL_SYNC_FLUSH_COMMANDS_BIT 0x00000001 -#define GL_SAMPLE_POSITION 0x8E50 -#define GL_SAMPLE_MASK 0x8E51 -#define GL_SAMPLE_MASK_VALUE 0x8E52 -#define GL_MAX_SAMPLE_MASK_WORDS 0x8E59 -#define GL_TEXTURE_2D_MULTISAMPLE 0x9100 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE 0x9101 -#define GL_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9102 -#define GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY 0x9103 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE 0x9104 -#define GL_TEXTURE_BINDING_2D_MULTISAMPLE_ARRAY 0x9105 -#define GL_TEXTURE_SAMPLES 0x9106 -#define GL_TEXTURE_FIXED_SAMPLE_LOCATIONS 0x9107 -#define GL_SAMPLER_2D_MULTISAMPLE 0x9108 -#define GL_INT_SAMPLER_2D_MULTISAMPLE 0x9109 -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE 0x910A -#define GL_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910B -#define GL_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910C -#define GL_UNSIGNED_INT_SAMPLER_2D_MULTISAMPLE_ARRAY 0x910D -#define GL_MAX_COLOR_TEXTURE_SAMPLES 0x910E -#define GL_MAX_DEPTH_TEXTURE_SAMPLES 0x910F -#define GL_MAX_INTEGER_SAMPLES 0x9110 -#define GL_VERTEX_ATTRIB_ARRAY_DIVISOR 0x88FE -#define GL_SRC1_COLOR 0x88F9 -#define GL_ONE_MINUS_SRC1_COLOR 0x88FA -#define GL_ONE_MINUS_SRC1_ALPHA 0x88FB -#define GL_MAX_DUAL_SOURCE_DRAW_BUFFERS 0x88FC -#define GL_ANY_SAMPLES_PASSED 0x8C2F -#define GL_SAMPLER_BINDING 0x8919 -#define GL_RGB10_A2UI 0x906F -#define GL_TEXTURE_SWIZZLE_R 0x8E42 -#define GL_TEXTURE_SWIZZLE_G 0x8E43 -#define GL_TEXTURE_SWIZZLE_B 0x8E44 -#define GL_TEXTURE_SWIZZLE_A 0x8E45 -#define GL_TEXTURE_SWIZZLE_RGBA 0x8E46 -#define GL_TIME_ELAPSED 0x88BF -#define GL_TIMESTAMP 0x8E28 -#define GL_INT_2_10_10_10_REV 0x8D9F -#ifndef GL_VERSION_1_0 -#define GL_VERSION_1_0 1 -GLAPI int GLAD_GL_VERSION_1_0; -typedef void (APIENTRYP PFNGLCULLFACEPROC)(GLenum mode); -GLAPI PFNGLCULLFACEPROC glad_glCullFace; -#define glCullFace glad_glCullFace -typedef void (APIENTRYP PFNGLFRONTFACEPROC)(GLenum mode); -GLAPI PFNGLFRONTFACEPROC glad_glFrontFace; -#define glFrontFace glad_glFrontFace -typedef void (APIENTRYP PFNGLHINTPROC)(GLenum target, GLenum mode); -GLAPI PFNGLHINTPROC glad_glHint; -#define glHint glad_glHint -typedef void (APIENTRYP PFNGLLINEWIDTHPROC)(GLfloat width); -GLAPI PFNGLLINEWIDTHPROC glad_glLineWidth; -#define glLineWidth glad_glLineWidth -typedef void (APIENTRYP PFNGLPOINTSIZEPROC)(GLfloat size); -GLAPI PFNGLPOINTSIZEPROC glad_glPointSize; -#define glPointSize glad_glPointSize -typedef void (APIENTRYP PFNGLPOLYGONMODEPROC)(GLenum face, GLenum mode); -GLAPI PFNGLPOLYGONMODEPROC glad_glPolygonMode; -#define glPolygonMode glad_glPolygonMode -typedef void (APIENTRYP PFNGLSCISSORPROC)(GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI PFNGLSCISSORPROC glad_glScissor; -#define glScissor glad_glScissor -typedef void (APIENTRYP PFNGLTEXPARAMETERFPROC)(GLenum target, GLenum pname, GLfloat param); -GLAPI PFNGLTEXPARAMETERFPROC glad_glTexParameterf; -#define glTexParameterf glad_glTexParameterf -typedef void (APIENTRYP PFNGLTEXPARAMETERFVPROC)(GLenum target, GLenum pname, const GLfloat *params); -GLAPI PFNGLTEXPARAMETERFVPROC glad_glTexParameterfv; -#define glTexParameterfv glad_glTexParameterfv -typedef void (APIENTRYP PFNGLTEXPARAMETERIPROC)(GLenum target, GLenum pname, GLint param); -GLAPI PFNGLTEXPARAMETERIPROC glad_glTexParameteri; -#define glTexParameteri glad_glTexParameteri -typedef void (APIENTRYP PFNGLTEXPARAMETERIVPROC)(GLenum target, GLenum pname, const GLint *params); -GLAPI PFNGLTEXPARAMETERIVPROC glad_glTexParameteriv; -#define glTexParameteriv glad_glTexParameteriv -typedef void (APIENTRYP PFNGLTEXIMAGE1DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXIMAGE1DPROC glad_glTexImage1D; -#define glTexImage1D glad_glTexImage1D -typedef void (APIENTRYP PFNGLTEXIMAGE2DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLint border, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXIMAGE2DPROC glad_glTexImage2D; -#define glTexImage2D glad_glTexImage2D -typedef void (APIENTRYP PFNGLDRAWBUFFERPROC)(GLenum buf); -GLAPI PFNGLDRAWBUFFERPROC glad_glDrawBuffer; -#define glDrawBuffer glad_glDrawBuffer -typedef void (APIENTRYP PFNGLCLEARPROC)(GLbitfield mask); -GLAPI PFNGLCLEARPROC glad_glClear; -#define glClear glad_glClear -typedef void (APIENTRYP PFNGLCLEARCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI PFNGLCLEARCOLORPROC glad_glClearColor; -#define glClearColor glad_glClearColor -typedef void (APIENTRYP PFNGLCLEARSTENCILPROC)(GLint s); -GLAPI PFNGLCLEARSTENCILPROC glad_glClearStencil; -#define glClearStencil glad_glClearStencil -typedef void (APIENTRYP PFNGLCLEARDEPTHPROC)(GLdouble depth); -GLAPI PFNGLCLEARDEPTHPROC glad_glClearDepth; -#define glClearDepth glad_glClearDepth -typedef void (APIENTRYP PFNGLSTENCILMASKPROC)(GLuint mask); -GLAPI PFNGLSTENCILMASKPROC glad_glStencilMask; -#define glStencilMask glad_glStencilMask -typedef void (APIENTRYP PFNGLCOLORMASKPROC)(GLboolean red, GLboolean green, GLboolean blue, GLboolean alpha); -GLAPI PFNGLCOLORMASKPROC glad_glColorMask; -#define glColorMask glad_glColorMask -typedef void (APIENTRYP PFNGLDEPTHMASKPROC)(GLboolean flag); -GLAPI PFNGLDEPTHMASKPROC glad_glDepthMask; -#define glDepthMask glad_glDepthMask -typedef void (APIENTRYP PFNGLDISABLEPROC)(GLenum cap); -GLAPI PFNGLDISABLEPROC glad_glDisable; -#define glDisable glad_glDisable -typedef void (APIENTRYP PFNGLENABLEPROC)(GLenum cap); -GLAPI PFNGLENABLEPROC glad_glEnable; -#define glEnable glad_glEnable -typedef void (APIENTRYP PFNGLFINISHPROC)(void); -GLAPI PFNGLFINISHPROC glad_glFinish; -#define glFinish glad_glFinish -typedef void (APIENTRYP PFNGLFLUSHPROC)(void); -GLAPI PFNGLFLUSHPROC glad_glFlush; -#define glFlush glad_glFlush -typedef void (APIENTRYP PFNGLBLENDFUNCPROC)(GLenum sfactor, GLenum dfactor); -GLAPI PFNGLBLENDFUNCPROC glad_glBlendFunc; -#define glBlendFunc glad_glBlendFunc -typedef void (APIENTRYP PFNGLLOGICOPPROC)(GLenum opcode); -GLAPI PFNGLLOGICOPPROC glad_glLogicOp; -#define glLogicOp glad_glLogicOp -typedef void (APIENTRYP PFNGLSTENCILFUNCPROC)(GLenum func, GLint ref, GLuint mask); -GLAPI PFNGLSTENCILFUNCPROC glad_glStencilFunc; -#define glStencilFunc glad_glStencilFunc -typedef void (APIENTRYP PFNGLSTENCILOPPROC)(GLenum fail, GLenum zfail, GLenum zpass); -GLAPI PFNGLSTENCILOPPROC glad_glStencilOp; -#define glStencilOp glad_glStencilOp -typedef void (APIENTRYP PFNGLDEPTHFUNCPROC)(GLenum func); -GLAPI PFNGLDEPTHFUNCPROC glad_glDepthFunc; -#define glDepthFunc glad_glDepthFunc -typedef void (APIENTRYP PFNGLPIXELSTOREFPROC)(GLenum pname, GLfloat param); -GLAPI PFNGLPIXELSTOREFPROC glad_glPixelStoref; -#define glPixelStoref glad_glPixelStoref -typedef void (APIENTRYP PFNGLPIXELSTOREIPROC)(GLenum pname, GLint param); -GLAPI PFNGLPIXELSTOREIPROC glad_glPixelStorei; -#define glPixelStorei glad_glPixelStorei -typedef void (APIENTRYP PFNGLREADBUFFERPROC)(GLenum src); -GLAPI PFNGLREADBUFFERPROC glad_glReadBuffer; -#define glReadBuffer glad_glReadBuffer -typedef void (APIENTRYP PFNGLREADPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum format, GLenum type, void *pixels); -GLAPI PFNGLREADPIXELSPROC glad_glReadPixels; -#define glReadPixels glad_glReadPixels -typedef void (APIENTRYP PFNGLGETBOOLEANVPROC)(GLenum pname, GLboolean *data); -GLAPI PFNGLGETBOOLEANVPROC glad_glGetBooleanv; -#define glGetBooleanv glad_glGetBooleanv -typedef void (APIENTRYP PFNGLGETDOUBLEVPROC)(GLenum pname, GLdouble *data); -GLAPI PFNGLGETDOUBLEVPROC glad_glGetDoublev; -#define glGetDoublev glad_glGetDoublev -typedef GLenum (APIENTRYP PFNGLGETERRORPROC)(void); -GLAPI PFNGLGETERRORPROC glad_glGetError; -#define glGetError glad_glGetError -typedef void (APIENTRYP PFNGLGETFLOATVPROC)(GLenum pname, GLfloat *data); -GLAPI PFNGLGETFLOATVPROC glad_glGetFloatv; -#define glGetFloatv glad_glGetFloatv -typedef void (APIENTRYP PFNGLGETINTEGERVPROC)(GLenum pname, GLint *data); -GLAPI PFNGLGETINTEGERVPROC glad_glGetIntegerv; -#define glGetIntegerv glad_glGetIntegerv -typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGPROC)(GLenum name); -GLAPI PFNGLGETSTRINGPROC glad_glGetString; -#define glGetString glad_glGetString -typedef void (APIENTRYP PFNGLGETTEXIMAGEPROC)(GLenum target, GLint level, GLenum format, GLenum type, void *pixels); -GLAPI PFNGLGETTEXIMAGEPROC glad_glGetTexImage; -#define glGetTexImage glad_glGetTexImage -typedef void (APIENTRYP PFNGLGETTEXPARAMETERFVPROC)(GLenum target, GLenum pname, GLfloat *params); -GLAPI PFNGLGETTEXPARAMETERFVPROC glad_glGetTexParameterfv; -#define glGetTexParameterfv glad_glGetTexParameterfv -typedef void (APIENTRYP PFNGLGETTEXPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETTEXPARAMETERIVPROC glad_glGetTexParameteriv; -#define glGetTexParameteriv glad_glGetTexParameteriv -typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERFVPROC)(GLenum target, GLint level, GLenum pname, GLfloat *params); -GLAPI PFNGLGETTEXLEVELPARAMETERFVPROC glad_glGetTexLevelParameterfv; -#define glGetTexLevelParameterfv glad_glGetTexLevelParameterfv -typedef void (APIENTRYP PFNGLGETTEXLEVELPARAMETERIVPROC)(GLenum target, GLint level, GLenum pname, GLint *params); -GLAPI PFNGLGETTEXLEVELPARAMETERIVPROC glad_glGetTexLevelParameteriv; -#define glGetTexLevelParameteriv glad_glGetTexLevelParameteriv -typedef GLboolean (APIENTRYP PFNGLISENABLEDPROC)(GLenum cap); -GLAPI PFNGLISENABLEDPROC glad_glIsEnabled; -#define glIsEnabled glad_glIsEnabled -typedef void (APIENTRYP PFNGLDEPTHRANGEPROC)(GLdouble n, GLdouble f); -GLAPI PFNGLDEPTHRANGEPROC glad_glDepthRange; -#define glDepthRange glad_glDepthRange -typedef void (APIENTRYP PFNGLVIEWPORTPROC)(GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI PFNGLVIEWPORTPROC glad_glViewport; -#define glViewport glad_glViewport -typedef void (APIENTRYP PFNGLNEWLISTPROC)(GLuint list, GLenum mode); -GLAPI PFNGLNEWLISTPROC glad_glNewList; -#define glNewList glad_glNewList -typedef void (APIENTRYP PFNGLENDLISTPROC)(void); -GLAPI PFNGLENDLISTPROC glad_glEndList; -#define glEndList glad_glEndList -typedef void (APIENTRYP PFNGLCALLLISTPROC)(GLuint list); -GLAPI PFNGLCALLLISTPROC glad_glCallList; -#define glCallList glad_glCallList -typedef void (APIENTRYP PFNGLCALLLISTSPROC)(GLsizei n, GLenum type, const void *lists); -GLAPI PFNGLCALLLISTSPROC glad_glCallLists; -#define glCallLists glad_glCallLists -typedef void (APIENTRYP PFNGLDELETELISTSPROC)(GLuint list, GLsizei range); -GLAPI PFNGLDELETELISTSPROC glad_glDeleteLists; -#define glDeleteLists glad_glDeleteLists -typedef GLuint (APIENTRYP PFNGLGENLISTSPROC)(GLsizei range); -GLAPI PFNGLGENLISTSPROC glad_glGenLists; -#define glGenLists glad_glGenLists -typedef void (APIENTRYP PFNGLLISTBASEPROC)(GLuint base); -GLAPI PFNGLLISTBASEPROC glad_glListBase; -#define glListBase glad_glListBase -typedef void (APIENTRYP PFNGLBEGINPROC)(GLenum mode); -GLAPI PFNGLBEGINPROC glad_glBegin; -#define glBegin glad_glBegin -typedef void (APIENTRYP PFNGLBITMAPPROC)(GLsizei width, GLsizei height, GLfloat xorig, GLfloat yorig, GLfloat xmove, GLfloat ymove, const GLubyte *bitmap); -GLAPI PFNGLBITMAPPROC glad_glBitmap; -#define glBitmap glad_glBitmap -typedef void (APIENTRYP PFNGLCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue); -GLAPI PFNGLCOLOR3BPROC glad_glColor3b; -#define glColor3b glad_glColor3b -typedef void (APIENTRYP PFNGLCOLOR3BVPROC)(const GLbyte *v); -GLAPI PFNGLCOLOR3BVPROC glad_glColor3bv; -#define glColor3bv glad_glColor3bv -typedef void (APIENTRYP PFNGLCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue); -GLAPI PFNGLCOLOR3DPROC glad_glColor3d; -#define glColor3d glad_glColor3d -typedef void (APIENTRYP PFNGLCOLOR3DVPROC)(const GLdouble *v); -GLAPI PFNGLCOLOR3DVPROC glad_glColor3dv; -#define glColor3dv glad_glColor3dv -typedef void (APIENTRYP PFNGLCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue); -GLAPI PFNGLCOLOR3FPROC glad_glColor3f; -#define glColor3f glad_glColor3f -typedef void (APIENTRYP PFNGLCOLOR3FVPROC)(const GLfloat *v); -GLAPI PFNGLCOLOR3FVPROC glad_glColor3fv; -#define glColor3fv glad_glColor3fv -typedef void (APIENTRYP PFNGLCOLOR3IPROC)(GLint red, GLint green, GLint blue); -GLAPI PFNGLCOLOR3IPROC glad_glColor3i; -#define glColor3i glad_glColor3i -typedef void (APIENTRYP PFNGLCOLOR3IVPROC)(const GLint *v); -GLAPI PFNGLCOLOR3IVPROC glad_glColor3iv; -#define glColor3iv glad_glColor3iv -typedef void (APIENTRYP PFNGLCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue); -GLAPI PFNGLCOLOR3SPROC glad_glColor3s; -#define glColor3s glad_glColor3s -typedef void (APIENTRYP PFNGLCOLOR3SVPROC)(const GLshort *v); -GLAPI PFNGLCOLOR3SVPROC glad_glColor3sv; -#define glColor3sv glad_glColor3sv -typedef void (APIENTRYP PFNGLCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue); -GLAPI PFNGLCOLOR3UBPROC glad_glColor3ub; -#define glColor3ub glad_glColor3ub -typedef void (APIENTRYP PFNGLCOLOR3UBVPROC)(const GLubyte *v); -GLAPI PFNGLCOLOR3UBVPROC glad_glColor3ubv; -#define glColor3ubv glad_glColor3ubv -typedef void (APIENTRYP PFNGLCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue); -GLAPI PFNGLCOLOR3UIPROC glad_glColor3ui; -#define glColor3ui glad_glColor3ui -typedef void (APIENTRYP PFNGLCOLOR3UIVPROC)(const GLuint *v); -GLAPI PFNGLCOLOR3UIVPROC glad_glColor3uiv; -#define glColor3uiv glad_glColor3uiv -typedef void (APIENTRYP PFNGLCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue); -GLAPI PFNGLCOLOR3USPROC glad_glColor3us; -#define glColor3us glad_glColor3us -typedef void (APIENTRYP PFNGLCOLOR3USVPROC)(const GLushort *v); -GLAPI PFNGLCOLOR3USVPROC glad_glColor3usv; -#define glColor3usv glad_glColor3usv -typedef void (APIENTRYP PFNGLCOLOR4BPROC)(GLbyte red, GLbyte green, GLbyte blue, GLbyte alpha); -GLAPI PFNGLCOLOR4BPROC glad_glColor4b; -#define glColor4b glad_glColor4b -typedef void (APIENTRYP PFNGLCOLOR4BVPROC)(const GLbyte *v); -GLAPI PFNGLCOLOR4BVPROC glad_glColor4bv; -#define glColor4bv glad_glColor4bv -typedef void (APIENTRYP PFNGLCOLOR4DPROC)(GLdouble red, GLdouble green, GLdouble blue, GLdouble alpha); -GLAPI PFNGLCOLOR4DPROC glad_glColor4d; -#define glColor4d glad_glColor4d -typedef void (APIENTRYP PFNGLCOLOR4DVPROC)(const GLdouble *v); -GLAPI PFNGLCOLOR4DVPROC glad_glColor4dv; -#define glColor4dv glad_glColor4dv -typedef void (APIENTRYP PFNGLCOLOR4FPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI PFNGLCOLOR4FPROC glad_glColor4f; -#define glColor4f glad_glColor4f -typedef void (APIENTRYP PFNGLCOLOR4FVPROC)(const GLfloat *v); -GLAPI PFNGLCOLOR4FVPROC glad_glColor4fv; -#define glColor4fv glad_glColor4fv -typedef void (APIENTRYP PFNGLCOLOR4IPROC)(GLint red, GLint green, GLint blue, GLint alpha); -GLAPI PFNGLCOLOR4IPROC glad_glColor4i; -#define glColor4i glad_glColor4i -typedef void (APIENTRYP PFNGLCOLOR4IVPROC)(const GLint *v); -GLAPI PFNGLCOLOR4IVPROC glad_glColor4iv; -#define glColor4iv glad_glColor4iv -typedef void (APIENTRYP PFNGLCOLOR4SPROC)(GLshort red, GLshort green, GLshort blue, GLshort alpha); -GLAPI PFNGLCOLOR4SPROC glad_glColor4s; -#define glColor4s glad_glColor4s -typedef void (APIENTRYP PFNGLCOLOR4SVPROC)(const GLshort *v); -GLAPI PFNGLCOLOR4SVPROC glad_glColor4sv; -#define glColor4sv glad_glColor4sv -typedef void (APIENTRYP PFNGLCOLOR4UBPROC)(GLubyte red, GLubyte green, GLubyte blue, GLubyte alpha); -GLAPI PFNGLCOLOR4UBPROC glad_glColor4ub; -#define glColor4ub glad_glColor4ub -typedef void (APIENTRYP PFNGLCOLOR4UBVPROC)(const GLubyte *v); -GLAPI PFNGLCOLOR4UBVPROC glad_glColor4ubv; -#define glColor4ubv glad_glColor4ubv -typedef void (APIENTRYP PFNGLCOLOR4UIPROC)(GLuint red, GLuint green, GLuint blue, GLuint alpha); -GLAPI PFNGLCOLOR4UIPROC glad_glColor4ui; -#define glColor4ui glad_glColor4ui -typedef void (APIENTRYP PFNGLCOLOR4UIVPROC)(const GLuint *v); -GLAPI PFNGLCOLOR4UIVPROC glad_glColor4uiv; -#define glColor4uiv glad_glColor4uiv -typedef void (APIENTRYP PFNGLCOLOR4USPROC)(GLushort red, GLushort green, GLushort blue, GLushort alpha); -GLAPI PFNGLCOLOR4USPROC glad_glColor4us; -#define glColor4us glad_glColor4us -typedef void (APIENTRYP PFNGLCOLOR4USVPROC)(const GLushort *v); -GLAPI PFNGLCOLOR4USVPROC glad_glColor4usv; -#define glColor4usv glad_glColor4usv -typedef void (APIENTRYP PFNGLEDGEFLAGPROC)(GLboolean flag); -GLAPI PFNGLEDGEFLAGPROC glad_glEdgeFlag; -#define glEdgeFlag glad_glEdgeFlag -typedef void (APIENTRYP PFNGLEDGEFLAGVPROC)(const GLboolean *flag); -GLAPI PFNGLEDGEFLAGVPROC glad_glEdgeFlagv; -#define glEdgeFlagv glad_glEdgeFlagv -typedef void (APIENTRYP PFNGLENDPROC)(void); -GLAPI PFNGLENDPROC glad_glEnd; -#define glEnd glad_glEnd -typedef void (APIENTRYP PFNGLINDEXDPROC)(GLdouble c); -GLAPI PFNGLINDEXDPROC glad_glIndexd; -#define glIndexd glad_glIndexd -typedef void (APIENTRYP PFNGLINDEXDVPROC)(const GLdouble *c); -GLAPI PFNGLINDEXDVPROC glad_glIndexdv; -#define glIndexdv glad_glIndexdv -typedef void (APIENTRYP PFNGLINDEXFPROC)(GLfloat c); -GLAPI PFNGLINDEXFPROC glad_glIndexf; -#define glIndexf glad_glIndexf -typedef void (APIENTRYP PFNGLINDEXFVPROC)(const GLfloat *c); -GLAPI PFNGLINDEXFVPROC glad_glIndexfv; -#define glIndexfv glad_glIndexfv -typedef void (APIENTRYP PFNGLINDEXIPROC)(GLint c); -GLAPI PFNGLINDEXIPROC glad_glIndexi; -#define glIndexi glad_glIndexi -typedef void (APIENTRYP PFNGLINDEXIVPROC)(const GLint *c); -GLAPI PFNGLINDEXIVPROC glad_glIndexiv; -#define glIndexiv glad_glIndexiv -typedef void (APIENTRYP PFNGLINDEXSPROC)(GLshort c); -GLAPI PFNGLINDEXSPROC glad_glIndexs; -#define glIndexs glad_glIndexs -typedef void (APIENTRYP PFNGLINDEXSVPROC)(const GLshort *c); -GLAPI PFNGLINDEXSVPROC glad_glIndexsv; -#define glIndexsv glad_glIndexsv -typedef void (APIENTRYP PFNGLNORMAL3BPROC)(GLbyte nx, GLbyte ny, GLbyte nz); -GLAPI PFNGLNORMAL3BPROC glad_glNormal3b; -#define glNormal3b glad_glNormal3b -typedef void (APIENTRYP PFNGLNORMAL3BVPROC)(const GLbyte *v); -GLAPI PFNGLNORMAL3BVPROC glad_glNormal3bv; -#define glNormal3bv glad_glNormal3bv -typedef void (APIENTRYP PFNGLNORMAL3DPROC)(GLdouble nx, GLdouble ny, GLdouble nz); -GLAPI PFNGLNORMAL3DPROC glad_glNormal3d; -#define glNormal3d glad_glNormal3d -typedef void (APIENTRYP PFNGLNORMAL3DVPROC)(const GLdouble *v); -GLAPI PFNGLNORMAL3DVPROC glad_glNormal3dv; -#define glNormal3dv glad_glNormal3dv -typedef void (APIENTRYP PFNGLNORMAL3FPROC)(GLfloat nx, GLfloat ny, GLfloat nz); -GLAPI PFNGLNORMAL3FPROC glad_glNormal3f; -#define glNormal3f glad_glNormal3f -typedef void (APIENTRYP PFNGLNORMAL3FVPROC)(const GLfloat *v); -GLAPI PFNGLNORMAL3FVPROC glad_glNormal3fv; -#define glNormal3fv glad_glNormal3fv -typedef void (APIENTRYP PFNGLNORMAL3IPROC)(GLint nx, GLint ny, GLint nz); -GLAPI PFNGLNORMAL3IPROC glad_glNormal3i; -#define glNormal3i glad_glNormal3i -typedef void (APIENTRYP PFNGLNORMAL3IVPROC)(const GLint *v); -GLAPI PFNGLNORMAL3IVPROC glad_glNormal3iv; -#define glNormal3iv glad_glNormal3iv -typedef void (APIENTRYP PFNGLNORMAL3SPROC)(GLshort nx, GLshort ny, GLshort nz); -GLAPI PFNGLNORMAL3SPROC glad_glNormal3s; -#define glNormal3s glad_glNormal3s -typedef void (APIENTRYP PFNGLNORMAL3SVPROC)(const GLshort *v); -GLAPI PFNGLNORMAL3SVPROC glad_glNormal3sv; -#define glNormal3sv glad_glNormal3sv -typedef void (APIENTRYP PFNGLRASTERPOS2DPROC)(GLdouble x, GLdouble y); -GLAPI PFNGLRASTERPOS2DPROC glad_glRasterPos2d; -#define glRasterPos2d glad_glRasterPos2d -typedef void (APIENTRYP PFNGLRASTERPOS2DVPROC)(const GLdouble *v); -GLAPI PFNGLRASTERPOS2DVPROC glad_glRasterPos2dv; -#define glRasterPos2dv glad_glRasterPos2dv -typedef void (APIENTRYP PFNGLRASTERPOS2FPROC)(GLfloat x, GLfloat y); -GLAPI PFNGLRASTERPOS2FPROC glad_glRasterPos2f; -#define glRasterPos2f glad_glRasterPos2f -typedef void (APIENTRYP PFNGLRASTERPOS2FVPROC)(const GLfloat *v); -GLAPI PFNGLRASTERPOS2FVPROC glad_glRasterPos2fv; -#define glRasterPos2fv glad_glRasterPos2fv -typedef void (APIENTRYP PFNGLRASTERPOS2IPROC)(GLint x, GLint y); -GLAPI PFNGLRASTERPOS2IPROC glad_glRasterPos2i; -#define glRasterPos2i glad_glRasterPos2i -typedef void (APIENTRYP PFNGLRASTERPOS2IVPROC)(const GLint *v); -GLAPI PFNGLRASTERPOS2IVPROC glad_glRasterPos2iv; -#define glRasterPos2iv glad_glRasterPos2iv -typedef void (APIENTRYP PFNGLRASTERPOS2SPROC)(GLshort x, GLshort y); -GLAPI PFNGLRASTERPOS2SPROC glad_glRasterPos2s; -#define glRasterPos2s glad_glRasterPos2s -typedef void (APIENTRYP PFNGLRASTERPOS2SVPROC)(const GLshort *v); -GLAPI PFNGLRASTERPOS2SVPROC glad_glRasterPos2sv; -#define glRasterPos2sv glad_glRasterPos2sv -typedef void (APIENTRYP PFNGLRASTERPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLRASTERPOS3DPROC glad_glRasterPos3d; -#define glRasterPos3d glad_glRasterPos3d -typedef void (APIENTRYP PFNGLRASTERPOS3DVPROC)(const GLdouble *v); -GLAPI PFNGLRASTERPOS3DVPROC glad_glRasterPos3dv; -#define glRasterPos3dv glad_glRasterPos3dv -typedef void (APIENTRYP PFNGLRASTERPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLRASTERPOS3FPROC glad_glRasterPos3f; -#define glRasterPos3f glad_glRasterPos3f -typedef void (APIENTRYP PFNGLRASTERPOS3FVPROC)(const GLfloat *v); -GLAPI PFNGLRASTERPOS3FVPROC glad_glRasterPos3fv; -#define glRasterPos3fv glad_glRasterPos3fv -typedef void (APIENTRYP PFNGLRASTERPOS3IPROC)(GLint x, GLint y, GLint z); -GLAPI PFNGLRASTERPOS3IPROC glad_glRasterPos3i; -#define glRasterPos3i glad_glRasterPos3i -typedef void (APIENTRYP PFNGLRASTERPOS3IVPROC)(const GLint *v); -GLAPI PFNGLRASTERPOS3IVPROC glad_glRasterPos3iv; -#define glRasterPos3iv glad_glRasterPos3iv -typedef void (APIENTRYP PFNGLRASTERPOS3SPROC)(GLshort x, GLshort y, GLshort z); -GLAPI PFNGLRASTERPOS3SPROC glad_glRasterPos3s; -#define glRasterPos3s glad_glRasterPos3s -typedef void (APIENTRYP PFNGLRASTERPOS3SVPROC)(const GLshort *v); -GLAPI PFNGLRASTERPOS3SVPROC glad_glRasterPos3sv; -#define glRasterPos3sv glad_glRasterPos3sv -typedef void (APIENTRYP PFNGLRASTERPOS4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); -GLAPI PFNGLRASTERPOS4DPROC glad_glRasterPos4d; -#define glRasterPos4d glad_glRasterPos4d -typedef void (APIENTRYP PFNGLRASTERPOS4DVPROC)(const GLdouble *v); -GLAPI PFNGLRASTERPOS4DVPROC glad_glRasterPos4dv; -#define glRasterPos4dv glad_glRasterPos4dv -typedef void (APIENTRYP PFNGLRASTERPOS4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); -GLAPI PFNGLRASTERPOS4FPROC glad_glRasterPos4f; -#define glRasterPos4f glad_glRasterPos4f -typedef void (APIENTRYP PFNGLRASTERPOS4FVPROC)(const GLfloat *v); -GLAPI PFNGLRASTERPOS4FVPROC glad_glRasterPos4fv; -#define glRasterPos4fv glad_glRasterPos4fv -typedef void (APIENTRYP PFNGLRASTERPOS4IPROC)(GLint x, GLint y, GLint z, GLint w); -GLAPI PFNGLRASTERPOS4IPROC glad_glRasterPos4i; -#define glRasterPos4i glad_glRasterPos4i -typedef void (APIENTRYP PFNGLRASTERPOS4IVPROC)(const GLint *v); -GLAPI PFNGLRASTERPOS4IVPROC glad_glRasterPos4iv; -#define glRasterPos4iv glad_glRasterPos4iv -typedef void (APIENTRYP PFNGLRASTERPOS4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w); -GLAPI PFNGLRASTERPOS4SPROC glad_glRasterPos4s; -#define glRasterPos4s glad_glRasterPos4s -typedef void (APIENTRYP PFNGLRASTERPOS4SVPROC)(const GLshort *v); -GLAPI PFNGLRASTERPOS4SVPROC glad_glRasterPos4sv; -#define glRasterPos4sv glad_glRasterPos4sv -typedef void (APIENTRYP PFNGLRECTDPROC)(GLdouble x1, GLdouble y1, GLdouble x2, GLdouble y2); -GLAPI PFNGLRECTDPROC glad_glRectd; -#define glRectd glad_glRectd -typedef void (APIENTRYP PFNGLRECTDVPROC)(const GLdouble *v1, const GLdouble *v2); -GLAPI PFNGLRECTDVPROC glad_glRectdv; -#define glRectdv glad_glRectdv -typedef void (APIENTRYP PFNGLRECTFPROC)(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2); -GLAPI PFNGLRECTFPROC glad_glRectf; -#define glRectf glad_glRectf -typedef void (APIENTRYP PFNGLRECTFVPROC)(const GLfloat *v1, const GLfloat *v2); -GLAPI PFNGLRECTFVPROC glad_glRectfv; -#define glRectfv glad_glRectfv -typedef void (APIENTRYP PFNGLRECTIPROC)(GLint x1, GLint y1, GLint x2, GLint y2); -GLAPI PFNGLRECTIPROC glad_glRecti; -#define glRecti glad_glRecti -typedef void (APIENTRYP PFNGLRECTIVPROC)(const GLint *v1, const GLint *v2); -GLAPI PFNGLRECTIVPROC glad_glRectiv; -#define glRectiv glad_glRectiv -typedef void (APIENTRYP PFNGLRECTSPROC)(GLshort x1, GLshort y1, GLshort x2, GLshort y2); -GLAPI PFNGLRECTSPROC glad_glRects; -#define glRects glad_glRects -typedef void (APIENTRYP PFNGLRECTSVPROC)(const GLshort *v1, const GLshort *v2); -GLAPI PFNGLRECTSVPROC glad_glRectsv; -#define glRectsv glad_glRectsv -typedef void (APIENTRYP PFNGLTEXCOORD1DPROC)(GLdouble s); -GLAPI PFNGLTEXCOORD1DPROC glad_glTexCoord1d; -#define glTexCoord1d glad_glTexCoord1d -typedef void (APIENTRYP PFNGLTEXCOORD1DVPROC)(const GLdouble *v); -GLAPI PFNGLTEXCOORD1DVPROC glad_glTexCoord1dv; -#define glTexCoord1dv glad_glTexCoord1dv -typedef void (APIENTRYP PFNGLTEXCOORD1FPROC)(GLfloat s); -GLAPI PFNGLTEXCOORD1FPROC glad_glTexCoord1f; -#define glTexCoord1f glad_glTexCoord1f -typedef void (APIENTRYP PFNGLTEXCOORD1FVPROC)(const GLfloat *v); -GLAPI PFNGLTEXCOORD1FVPROC glad_glTexCoord1fv; -#define glTexCoord1fv glad_glTexCoord1fv -typedef void (APIENTRYP PFNGLTEXCOORD1IPROC)(GLint s); -GLAPI PFNGLTEXCOORD1IPROC glad_glTexCoord1i; -#define glTexCoord1i glad_glTexCoord1i -typedef void (APIENTRYP PFNGLTEXCOORD1IVPROC)(const GLint *v); -GLAPI PFNGLTEXCOORD1IVPROC glad_glTexCoord1iv; -#define glTexCoord1iv glad_glTexCoord1iv -typedef void (APIENTRYP PFNGLTEXCOORD1SPROC)(GLshort s); -GLAPI PFNGLTEXCOORD1SPROC glad_glTexCoord1s; -#define glTexCoord1s glad_glTexCoord1s -typedef void (APIENTRYP PFNGLTEXCOORD1SVPROC)(const GLshort *v); -GLAPI PFNGLTEXCOORD1SVPROC glad_glTexCoord1sv; -#define glTexCoord1sv glad_glTexCoord1sv -typedef void (APIENTRYP PFNGLTEXCOORD2DPROC)(GLdouble s, GLdouble t); -GLAPI PFNGLTEXCOORD2DPROC glad_glTexCoord2d; -#define glTexCoord2d glad_glTexCoord2d -typedef void (APIENTRYP PFNGLTEXCOORD2DVPROC)(const GLdouble *v); -GLAPI PFNGLTEXCOORD2DVPROC glad_glTexCoord2dv; -#define glTexCoord2dv glad_glTexCoord2dv -typedef void (APIENTRYP PFNGLTEXCOORD2FPROC)(GLfloat s, GLfloat t); -GLAPI PFNGLTEXCOORD2FPROC glad_glTexCoord2f; -#define glTexCoord2f glad_glTexCoord2f -typedef void (APIENTRYP PFNGLTEXCOORD2FVPROC)(const GLfloat *v); -GLAPI PFNGLTEXCOORD2FVPROC glad_glTexCoord2fv; -#define glTexCoord2fv glad_glTexCoord2fv -typedef void (APIENTRYP PFNGLTEXCOORD2IPROC)(GLint s, GLint t); -GLAPI PFNGLTEXCOORD2IPROC glad_glTexCoord2i; -#define glTexCoord2i glad_glTexCoord2i -typedef void (APIENTRYP PFNGLTEXCOORD2IVPROC)(const GLint *v); -GLAPI PFNGLTEXCOORD2IVPROC glad_glTexCoord2iv; -#define glTexCoord2iv glad_glTexCoord2iv -typedef void (APIENTRYP PFNGLTEXCOORD2SPROC)(GLshort s, GLshort t); -GLAPI PFNGLTEXCOORD2SPROC glad_glTexCoord2s; -#define glTexCoord2s glad_glTexCoord2s -typedef void (APIENTRYP PFNGLTEXCOORD2SVPROC)(const GLshort *v); -GLAPI PFNGLTEXCOORD2SVPROC glad_glTexCoord2sv; -#define glTexCoord2sv glad_glTexCoord2sv -typedef void (APIENTRYP PFNGLTEXCOORD3DPROC)(GLdouble s, GLdouble t, GLdouble r); -GLAPI PFNGLTEXCOORD3DPROC glad_glTexCoord3d; -#define glTexCoord3d glad_glTexCoord3d -typedef void (APIENTRYP PFNGLTEXCOORD3DVPROC)(const GLdouble *v); -GLAPI PFNGLTEXCOORD3DVPROC glad_glTexCoord3dv; -#define glTexCoord3dv glad_glTexCoord3dv -typedef void (APIENTRYP PFNGLTEXCOORD3FPROC)(GLfloat s, GLfloat t, GLfloat r); -GLAPI PFNGLTEXCOORD3FPROC glad_glTexCoord3f; -#define glTexCoord3f glad_glTexCoord3f -typedef void (APIENTRYP PFNGLTEXCOORD3FVPROC)(const GLfloat *v); -GLAPI PFNGLTEXCOORD3FVPROC glad_glTexCoord3fv; -#define glTexCoord3fv glad_glTexCoord3fv -typedef void (APIENTRYP PFNGLTEXCOORD3IPROC)(GLint s, GLint t, GLint r); -GLAPI PFNGLTEXCOORD3IPROC glad_glTexCoord3i; -#define glTexCoord3i glad_glTexCoord3i -typedef void (APIENTRYP PFNGLTEXCOORD3IVPROC)(const GLint *v); -GLAPI PFNGLTEXCOORD3IVPROC glad_glTexCoord3iv; -#define glTexCoord3iv glad_glTexCoord3iv -typedef void (APIENTRYP PFNGLTEXCOORD3SPROC)(GLshort s, GLshort t, GLshort r); -GLAPI PFNGLTEXCOORD3SPROC glad_glTexCoord3s; -#define glTexCoord3s glad_glTexCoord3s -typedef void (APIENTRYP PFNGLTEXCOORD3SVPROC)(const GLshort *v); -GLAPI PFNGLTEXCOORD3SVPROC glad_glTexCoord3sv; -#define glTexCoord3sv glad_glTexCoord3sv -typedef void (APIENTRYP PFNGLTEXCOORD4DPROC)(GLdouble s, GLdouble t, GLdouble r, GLdouble q); -GLAPI PFNGLTEXCOORD4DPROC glad_glTexCoord4d; -#define glTexCoord4d glad_glTexCoord4d -typedef void (APIENTRYP PFNGLTEXCOORD4DVPROC)(const GLdouble *v); -GLAPI PFNGLTEXCOORD4DVPROC glad_glTexCoord4dv; -#define glTexCoord4dv glad_glTexCoord4dv -typedef void (APIENTRYP PFNGLTEXCOORD4FPROC)(GLfloat s, GLfloat t, GLfloat r, GLfloat q); -GLAPI PFNGLTEXCOORD4FPROC glad_glTexCoord4f; -#define glTexCoord4f glad_glTexCoord4f -typedef void (APIENTRYP PFNGLTEXCOORD4FVPROC)(const GLfloat *v); -GLAPI PFNGLTEXCOORD4FVPROC glad_glTexCoord4fv; -#define glTexCoord4fv glad_glTexCoord4fv -typedef void (APIENTRYP PFNGLTEXCOORD4IPROC)(GLint s, GLint t, GLint r, GLint q); -GLAPI PFNGLTEXCOORD4IPROC glad_glTexCoord4i; -#define glTexCoord4i glad_glTexCoord4i -typedef void (APIENTRYP PFNGLTEXCOORD4IVPROC)(const GLint *v); -GLAPI PFNGLTEXCOORD4IVPROC glad_glTexCoord4iv; -#define glTexCoord4iv glad_glTexCoord4iv -typedef void (APIENTRYP PFNGLTEXCOORD4SPROC)(GLshort s, GLshort t, GLshort r, GLshort q); -GLAPI PFNGLTEXCOORD4SPROC glad_glTexCoord4s; -#define glTexCoord4s glad_glTexCoord4s -typedef void (APIENTRYP PFNGLTEXCOORD4SVPROC)(const GLshort *v); -GLAPI PFNGLTEXCOORD4SVPROC glad_glTexCoord4sv; -#define glTexCoord4sv glad_glTexCoord4sv -typedef void (APIENTRYP PFNGLVERTEX2DPROC)(GLdouble x, GLdouble y); -GLAPI PFNGLVERTEX2DPROC glad_glVertex2d; -#define glVertex2d glad_glVertex2d -typedef void (APIENTRYP PFNGLVERTEX2DVPROC)(const GLdouble *v); -GLAPI PFNGLVERTEX2DVPROC glad_glVertex2dv; -#define glVertex2dv glad_glVertex2dv -typedef void (APIENTRYP PFNGLVERTEX2FPROC)(GLfloat x, GLfloat y); -GLAPI PFNGLVERTEX2FPROC glad_glVertex2f; -#define glVertex2f glad_glVertex2f -typedef void (APIENTRYP PFNGLVERTEX2FVPROC)(const GLfloat *v); -GLAPI PFNGLVERTEX2FVPROC glad_glVertex2fv; -#define glVertex2fv glad_glVertex2fv -typedef void (APIENTRYP PFNGLVERTEX2IPROC)(GLint x, GLint y); -GLAPI PFNGLVERTEX2IPROC glad_glVertex2i; -#define glVertex2i glad_glVertex2i -typedef void (APIENTRYP PFNGLVERTEX2IVPROC)(const GLint *v); -GLAPI PFNGLVERTEX2IVPROC glad_glVertex2iv; -#define glVertex2iv glad_glVertex2iv -typedef void (APIENTRYP PFNGLVERTEX2SPROC)(GLshort x, GLshort y); -GLAPI PFNGLVERTEX2SPROC glad_glVertex2s; -#define glVertex2s glad_glVertex2s -typedef void (APIENTRYP PFNGLVERTEX2SVPROC)(const GLshort *v); -GLAPI PFNGLVERTEX2SVPROC glad_glVertex2sv; -#define glVertex2sv glad_glVertex2sv -typedef void (APIENTRYP PFNGLVERTEX3DPROC)(GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLVERTEX3DPROC glad_glVertex3d; -#define glVertex3d glad_glVertex3d -typedef void (APIENTRYP PFNGLVERTEX3DVPROC)(const GLdouble *v); -GLAPI PFNGLVERTEX3DVPROC glad_glVertex3dv; -#define glVertex3dv glad_glVertex3dv -typedef void (APIENTRYP PFNGLVERTEX3FPROC)(GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLVERTEX3FPROC glad_glVertex3f; -#define glVertex3f glad_glVertex3f -typedef void (APIENTRYP PFNGLVERTEX3FVPROC)(const GLfloat *v); -GLAPI PFNGLVERTEX3FVPROC glad_glVertex3fv; -#define glVertex3fv glad_glVertex3fv -typedef void (APIENTRYP PFNGLVERTEX3IPROC)(GLint x, GLint y, GLint z); -GLAPI PFNGLVERTEX3IPROC glad_glVertex3i; -#define glVertex3i glad_glVertex3i -typedef void (APIENTRYP PFNGLVERTEX3IVPROC)(const GLint *v); -GLAPI PFNGLVERTEX3IVPROC glad_glVertex3iv; -#define glVertex3iv glad_glVertex3iv -typedef void (APIENTRYP PFNGLVERTEX3SPROC)(GLshort x, GLshort y, GLshort z); -GLAPI PFNGLVERTEX3SPROC glad_glVertex3s; -#define glVertex3s glad_glVertex3s -typedef void (APIENTRYP PFNGLVERTEX3SVPROC)(const GLshort *v); -GLAPI PFNGLVERTEX3SVPROC glad_glVertex3sv; -#define glVertex3sv glad_glVertex3sv -typedef void (APIENTRYP PFNGLVERTEX4DPROC)(GLdouble x, GLdouble y, GLdouble z, GLdouble w); -GLAPI PFNGLVERTEX4DPROC glad_glVertex4d; -#define glVertex4d glad_glVertex4d -typedef void (APIENTRYP PFNGLVERTEX4DVPROC)(const GLdouble *v); -GLAPI PFNGLVERTEX4DVPROC glad_glVertex4dv; -#define glVertex4dv glad_glVertex4dv -typedef void (APIENTRYP PFNGLVERTEX4FPROC)(GLfloat x, GLfloat y, GLfloat z, GLfloat w); -GLAPI PFNGLVERTEX4FPROC glad_glVertex4f; -#define glVertex4f glad_glVertex4f -typedef void (APIENTRYP PFNGLVERTEX4FVPROC)(const GLfloat *v); -GLAPI PFNGLVERTEX4FVPROC glad_glVertex4fv; -#define glVertex4fv glad_glVertex4fv -typedef void (APIENTRYP PFNGLVERTEX4IPROC)(GLint x, GLint y, GLint z, GLint w); -GLAPI PFNGLVERTEX4IPROC glad_glVertex4i; -#define glVertex4i glad_glVertex4i -typedef void (APIENTRYP PFNGLVERTEX4IVPROC)(const GLint *v); -GLAPI PFNGLVERTEX4IVPROC glad_glVertex4iv; -#define glVertex4iv glad_glVertex4iv -typedef void (APIENTRYP PFNGLVERTEX4SPROC)(GLshort x, GLshort y, GLshort z, GLshort w); -GLAPI PFNGLVERTEX4SPROC glad_glVertex4s; -#define glVertex4s glad_glVertex4s -typedef void (APIENTRYP PFNGLVERTEX4SVPROC)(const GLshort *v); -GLAPI PFNGLVERTEX4SVPROC glad_glVertex4sv; -#define glVertex4sv glad_glVertex4sv -typedef void (APIENTRYP PFNGLCLIPPLANEPROC)(GLenum plane, const GLdouble *equation); -GLAPI PFNGLCLIPPLANEPROC glad_glClipPlane; -#define glClipPlane glad_glClipPlane -typedef void (APIENTRYP PFNGLCOLORMATERIALPROC)(GLenum face, GLenum mode); -GLAPI PFNGLCOLORMATERIALPROC glad_glColorMaterial; -#define glColorMaterial glad_glColorMaterial -typedef void (APIENTRYP PFNGLFOGFPROC)(GLenum pname, GLfloat param); -GLAPI PFNGLFOGFPROC glad_glFogf; -#define glFogf glad_glFogf -typedef void (APIENTRYP PFNGLFOGFVPROC)(GLenum pname, const GLfloat *params); -GLAPI PFNGLFOGFVPROC glad_glFogfv; -#define glFogfv glad_glFogfv -typedef void (APIENTRYP PFNGLFOGIPROC)(GLenum pname, GLint param); -GLAPI PFNGLFOGIPROC glad_glFogi; -#define glFogi glad_glFogi -typedef void (APIENTRYP PFNGLFOGIVPROC)(GLenum pname, const GLint *params); -GLAPI PFNGLFOGIVPROC glad_glFogiv; -#define glFogiv glad_glFogiv -typedef void (APIENTRYP PFNGLLIGHTFPROC)(GLenum light, GLenum pname, GLfloat param); -GLAPI PFNGLLIGHTFPROC glad_glLightf; -#define glLightf glad_glLightf -typedef void (APIENTRYP PFNGLLIGHTFVPROC)(GLenum light, GLenum pname, const GLfloat *params); -GLAPI PFNGLLIGHTFVPROC glad_glLightfv; -#define glLightfv glad_glLightfv -typedef void (APIENTRYP PFNGLLIGHTIPROC)(GLenum light, GLenum pname, GLint param); -GLAPI PFNGLLIGHTIPROC glad_glLighti; -#define glLighti glad_glLighti -typedef void (APIENTRYP PFNGLLIGHTIVPROC)(GLenum light, GLenum pname, const GLint *params); -GLAPI PFNGLLIGHTIVPROC glad_glLightiv; -#define glLightiv glad_glLightiv -typedef void (APIENTRYP PFNGLLIGHTMODELFPROC)(GLenum pname, GLfloat param); -GLAPI PFNGLLIGHTMODELFPROC glad_glLightModelf; -#define glLightModelf glad_glLightModelf -typedef void (APIENTRYP PFNGLLIGHTMODELFVPROC)(GLenum pname, const GLfloat *params); -GLAPI PFNGLLIGHTMODELFVPROC glad_glLightModelfv; -#define glLightModelfv glad_glLightModelfv -typedef void (APIENTRYP PFNGLLIGHTMODELIPROC)(GLenum pname, GLint param); -GLAPI PFNGLLIGHTMODELIPROC glad_glLightModeli; -#define glLightModeli glad_glLightModeli -typedef void (APIENTRYP PFNGLLIGHTMODELIVPROC)(GLenum pname, const GLint *params); -GLAPI PFNGLLIGHTMODELIVPROC glad_glLightModeliv; -#define glLightModeliv glad_glLightModeliv -typedef void (APIENTRYP PFNGLLINESTIPPLEPROC)(GLint factor, GLushort pattern); -GLAPI PFNGLLINESTIPPLEPROC glad_glLineStipple; -#define glLineStipple glad_glLineStipple -typedef void (APIENTRYP PFNGLMATERIALFPROC)(GLenum face, GLenum pname, GLfloat param); -GLAPI PFNGLMATERIALFPROC glad_glMaterialf; -#define glMaterialf glad_glMaterialf -typedef void (APIENTRYP PFNGLMATERIALFVPROC)(GLenum face, GLenum pname, const GLfloat *params); -GLAPI PFNGLMATERIALFVPROC glad_glMaterialfv; -#define glMaterialfv glad_glMaterialfv -typedef void (APIENTRYP PFNGLMATERIALIPROC)(GLenum face, GLenum pname, GLint param); -GLAPI PFNGLMATERIALIPROC glad_glMateriali; -#define glMateriali glad_glMateriali -typedef void (APIENTRYP PFNGLMATERIALIVPROC)(GLenum face, GLenum pname, const GLint *params); -GLAPI PFNGLMATERIALIVPROC glad_glMaterialiv; -#define glMaterialiv glad_glMaterialiv -typedef void (APIENTRYP PFNGLPOLYGONSTIPPLEPROC)(const GLubyte *mask); -GLAPI PFNGLPOLYGONSTIPPLEPROC glad_glPolygonStipple; -#define glPolygonStipple glad_glPolygonStipple -typedef void (APIENTRYP PFNGLSHADEMODELPROC)(GLenum mode); -GLAPI PFNGLSHADEMODELPROC glad_glShadeModel; -#define glShadeModel glad_glShadeModel -typedef void (APIENTRYP PFNGLTEXENVFPROC)(GLenum target, GLenum pname, GLfloat param); -GLAPI PFNGLTEXENVFPROC glad_glTexEnvf; -#define glTexEnvf glad_glTexEnvf -typedef void (APIENTRYP PFNGLTEXENVFVPROC)(GLenum target, GLenum pname, const GLfloat *params); -GLAPI PFNGLTEXENVFVPROC glad_glTexEnvfv; -#define glTexEnvfv glad_glTexEnvfv -typedef void (APIENTRYP PFNGLTEXENVIPROC)(GLenum target, GLenum pname, GLint param); -GLAPI PFNGLTEXENVIPROC glad_glTexEnvi; -#define glTexEnvi glad_glTexEnvi -typedef void (APIENTRYP PFNGLTEXENVIVPROC)(GLenum target, GLenum pname, const GLint *params); -GLAPI PFNGLTEXENVIVPROC glad_glTexEnviv; -#define glTexEnviv glad_glTexEnviv -typedef void (APIENTRYP PFNGLTEXGENDPROC)(GLenum coord, GLenum pname, GLdouble param); -GLAPI PFNGLTEXGENDPROC glad_glTexGend; -#define glTexGend glad_glTexGend -typedef void (APIENTRYP PFNGLTEXGENDVPROC)(GLenum coord, GLenum pname, const GLdouble *params); -GLAPI PFNGLTEXGENDVPROC glad_glTexGendv; -#define glTexGendv glad_glTexGendv -typedef void (APIENTRYP PFNGLTEXGENFPROC)(GLenum coord, GLenum pname, GLfloat param); -GLAPI PFNGLTEXGENFPROC glad_glTexGenf; -#define glTexGenf glad_glTexGenf -typedef void (APIENTRYP PFNGLTEXGENFVPROC)(GLenum coord, GLenum pname, const GLfloat *params); -GLAPI PFNGLTEXGENFVPROC glad_glTexGenfv; -#define glTexGenfv glad_glTexGenfv -typedef void (APIENTRYP PFNGLTEXGENIPROC)(GLenum coord, GLenum pname, GLint param); -GLAPI PFNGLTEXGENIPROC glad_glTexGeni; -#define glTexGeni glad_glTexGeni -typedef void (APIENTRYP PFNGLTEXGENIVPROC)(GLenum coord, GLenum pname, const GLint *params); -GLAPI PFNGLTEXGENIVPROC glad_glTexGeniv; -#define glTexGeniv glad_glTexGeniv -typedef void (APIENTRYP PFNGLFEEDBACKBUFFERPROC)(GLsizei size, GLenum type, GLfloat *buffer); -GLAPI PFNGLFEEDBACKBUFFERPROC glad_glFeedbackBuffer; -#define glFeedbackBuffer glad_glFeedbackBuffer -typedef void (APIENTRYP PFNGLSELECTBUFFERPROC)(GLsizei size, GLuint *buffer); -GLAPI PFNGLSELECTBUFFERPROC glad_glSelectBuffer; -#define glSelectBuffer glad_glSelectBuffer -typedef GLint (APIENTRYP PFNGLRENDERMODEPROC)(GLenum mode); -GLAPI PFNGLRENDERMODEPROC glad_glRenderMode; -#define glRenderMode glad_glRenderMode -typedef void (APIENTRYP PFNGLINITNAMESPROC)(void); -GLAPI PFNGLINITNAMESPROC glad_glInitNames; -#define glInitNames glad_glInitNames -typedef void (APIENTRYP PFNGLLOADNAMEPROC)(GLuint name); -GLAPI PFNGLLOADNAMEPROC glad_glLoadName; -#define glLoadName glad_glLoadName -typedef void (APIENTRYP PFNGLPASSTHROUGHPROC)(GLfloat token); -GLAPI PFNGLPASSTHROUGHPROC glad_glPassThrough; -#define glPassThrough glad_glPassThrough -typedef void (APIENTRYP PFNGLPOPNAMEPROC)(void); -GLAPI PFNGLPOPNAMEPROC glad_glPopName; -#define glPopName glad_glPopName -typedef void (APIENTRYP PFNGLPUSHNAMEPROC)(GLuint name); -GLAPI PFNGLPUSHNAMEPROC glad_glPushName; -#define glPushName glad_glPushName -typedef void (APIENTRYP PFNGLCLEARACCUMPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI PFNGLCLEARACCUMPROC glad_glClearAccum; -#define glClearAccum glad_glClearAccum -typedef void (APIENTRYP PFNGLCLEARINDEXPROC)(GLfloat c); -GLAPI PFNGLCLEARINDEXPROC glad_glClearIndex; -#define glClearIndex glad_glClearIndex -typedef void (APIENTRYP PFNGLINDEXMASKPROC)(GLuint mask); -GLAPI PFNGLINDEXMASKPROC glad_glIndexMask; -#define glIndexMask glad_glIndexMask -typedef void (APIENTRYP PFNGLACCUMPROC)(GLenum op, GLfloat value); -GLAPI PFNGLACCUMPROC glad_glAccum; -#define glAccum glad_glAccum -typedef void (APIENTRYP PFNGLPOPATTRIBPROC)(void); -GLAPI PFNGLPOPATTRIBPROC glad_glPopAttrib; -#define glPopAttrib glad_glPopAttrib -typedef void (APIENTRYP PFNGLPUSHATTRIBPROC)(GLbitfield mask); -GLAPI PFNGLPUSHATTRIBPROC glad_glPushAttrib; -#define glPushAttrib glad_glPushAttrib -typedef void (APIENTRYP PFNGLMAP1DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint stride, GLint order, const GLdouble *points); -GLAPI PFNGLMAP1DPROC glad_glMap1d; -#define glMap1d glad_glMap1d -typedef void (APIENTRYP PFNGLMAP1FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint stride, GLint order, const GLfloat *points); -GLAPI PFNGLMAP1FPROC glad_glMap1f; -#define glMap1f glad_glMap1f -typedef void (APIENTRYP PFNGLMAP2DPROC)(GLenum target, GLdouble u1, GLdouble u2, GLint ustride, GLint uorder, GLdouble v1, GLdouble v2, GLint vstride, GLint vorder, const GLdouble *points); -GLAPI PFNGLMAP2DPROC glad_glMap2d; -#define glMap2d glad_glMap2d -typedef void (APIENTRYP PFNGLMAP2FPROC)(GLenum target, GLfloat u1, GLfloat u2, GLint ustride, GLint uorder, GLfloat v1, GLfloat v2, GLint vstride, GLint vorder, const GLfloat *points); -GLAPI PFNGLMAP2FPROC glad_glMap2f; -#define glMap2f glad_glMap2f -typedef void (APIENTRYP PFNGLMAPGRID1DPROC)(GLint un, GLdouble u1, GLdouble u2); -GLAPI PFNGLMAPGRID1DPROC glad_glMapGrid1d; -#define glMapGrid1d glad_glMapGrid1d -typedef void (APIENTRYP PFNGLMAPGRID1FPROC)(GLint un, GLfloat u1, GLfloat u2); -GLAPI PFNGLMAPGRID1FPROC glad_glMapGrid1f; -#define glMapGrid1f glad_glMapGrid1f -typedef void (APIENTRYP PFNGLMAPGRID2DPROC)(GLint un, GLdouble u1, GLdouble u2, GLint vn, GLdouble v1, GLdouble v2); -GLAPI PFNGLMAPGRID2DPROC glad_glMapGrid2d; -#define glMapGrid2d glad_glMapGrid2d -typedef void (APIENTRYP PFNGLMAPGRID2FPROC)(GLint un, GLfloat u1, GLfloat u2, GLint vn, GLfloat v1, GLfloat v2); -GLAPI PFNGLMAPGRID2FPROC glad_glMapGrid2f; -#define glMapGrid2f glad_glMapGrid2f -typedef void (APIENTRYP PFNGLEVALCOORD1DPROC)(GLdouble u); -GLAPI PFNGLEVALCOORD1DPROC glad_glEvalCoord1d; -#define glEvalCoord1d glad_glEvalCoord1d -typedef void (APIENTRYP PFNGLEVALCOORD1DVPROC)(const GLdouble *u); -GLAPI PFNGLEVALCOORD1DVPROC glad_glEvalCoord1dv; -#define glEvalCoord1dv glad_glEvalCoord1dv -typedef void (APIENTRYP PFNGLEVALCOORD1FPROC)(GLfloat u); -GLAPI PFNGLEVALCOORD1FPROC glad_glEvalCoord1f; -#define glEvalCoord1f glad_glEvalCoord1f -typedef void (APIENTRYP PFNGLEVALCOORD1FVPROC)(const GLfloat *u); -GLAPI PFNGLEVALCOORD1FVPROC glad_glEvalCoord1fv; -#define glEvalCoord1fv glad_glEvalCoord1fv -typedef void (APIENTRYP PFNGLEVALCOORD2DPROC)(GLdouble u, GLdouble v); -GLAPI PFNGLEVALCOORD2DPROC glad_glEvalCoord2d; -#define glEvalCoord2d glad_glEvalCoord2d -typedef void (APIENTRYP PFNGLEVALCOORD2DVPROC)(const GLdouble *u); -GLAPI PFNGLEVALCOORD2DVPROC glad_glEvalCoord2dv; -#define glEvalCoord2dv glad_glEvalCoord2dv -typedef void (APIENTRYP PFNGLEVALCOORD2FPROC)(GLfloat u, GLfloat v); -GLAPI PFNGLEVALCOORD2FPROC glad_glEvalCoord2f; -#define glEvalCoord2f glad_glEvalCoord2f -typedef void (APIENTRYP PFNGLEVALCOORD2FVPROC)(const GLfloat *u); -GLAPI PFNGLEVALCOORD2FVPROC glad_glEvalCoord2fv; -#define glEvalCoord2fv glad_glEvalCoord2fv -typedef void (APIENTRYP PFNGLEVALMESH1PROC)(GLenum mode, GLint i1, GLint i2); -GLAPI PFNGLEVALMESH1PROC glad_glEvalMesh1; -#define glEvalMesh1 glad_glEvalMesh1 -typedef void (APIENTRYP PFNGLEVALPOINT1PROC)(GLint i); -GLAPI PFNGLEVALPOINT1PROC glad_glEvalPoint1; -#define glEvalPoint1 glad_glEvalPoint1 -typedef void (APIENTRYP PFNGLEVALMESH2PROC)(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2); -GLAPI PFNGLEVALMESH2PROC glad_glEvalMesh2; -#define glEvalMesh2 glad_glEvalMesh2 -typedef void (APIENTRYP PFNGLEVALPOINT2PROC)(GLint i, GLint j); -GLAPI PFNGLEVALPOINT2PROC glad_glEvalPoint2; -#define glEvalPoint2 glad_glEvalPoint2 -typedef void (APIENTRYP PFNGLALPHAFUNCPROC)(GLenum func, GLfloat ref); -GLAPI PFNGLALPHAFUNCPROC glad_glAlphaFunc; -#define glAlphaFunc glad_glAlphaFunc -typedef void (APIENTRYP PFNGLPIXELZOOMPROC)(GLfloat xfactor, GLfloat yfactor); -GLAPI PFNGLPIXELZOOMPROC glad_glPixelZoom; -#define glPixelZoom glad_glPixelZoom -typedef void (APIENTRYP PFNGLPIXELTRANSFERFPROC)(GLenum pname, GLfloat param); -GLAPI PFNGLPIXELTRANSFERFPROC glad_glPixelTransferf; -#define glPixelTransferf glad_glPixelTransferf -typedef void (APIENTRYP PFNGLPIXELTRANSFERIPROC)(GLenum pname, GLint param); -GLAPI PFNGLPIXELTRANSFERIPROC glad_glPixelTransferi; -#define glPixelTransferi glad_glPixelTransferi -typedef void (APIENTRYP PFNGLPIXELMAPFVPROC)(GLenum map, GLsizei mapsize, const GLfloat *values); -GLAPI PFNGLPIXELMAPFVPROC glad_glPixelMapfv; -#define glPixelMapfv glad_glPixelMapfv -typedef void (APIENTRYP PFNGLPIXELMAPUIVPROC)(GLenum map, GLsizei mapsize, const GLuint *values); -GLAPI PFNGLPIXELMAPUIVPROC glad_glPixelMapuiv; -#define glPixelMapuiv glad_glPixelMapuiv -typedef void (APIENTRYP PFNGLPIXELMAPUSVPROC)(GLenum map, GLsizei mapsize, const GLushort *values); -GLAPI PFNGLPIXELMAPUSVPROC glad_glPixelMapusv; -#define glPixelMapusv glad_glPixelMapusv -typedef void (APIENTRYP PFNGLCOPYPIXELSPROC)(GLint x, GLint y, GLsizei width, GLsizei height, GLenum type); -GLAPI PFNGLCOPYPIXELSPROC glad_glCopyPixels; -#define glCopyPixels glad_glCopyPixels -typedef void (APIENTRYP PFNGLDRAWPIXELSPROC)(GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLDRAWPIXELSPROC glad_glDrawPixels; -#define glDrawPixels glad_glDrawPixels -typedef void (APIENTRYP PFNGLGETCLIPPLANEPROC)(GLenum plane, GLdouble *equation); -GLAPI PFNGLGETCLIPPLANEPROC glad_glGetClipPlane; -#define glGetClipPlane glad_glGetClipPlane -typedef void (APIENTRYP PFNGLGETLIGHTFVPROC)(GLenum light, GLenum pname, GLfloat *params); -GLAPI PFNGLGETLIGHTFVPROC glad_glGetLightfv; -#define glGetLightfv glad_glGetLightfv -typedef void (APIENTRYP PFNGLGETLIGHTIVPROC)(GLenum light, GLenum pname, GLint *params); -GLAPI PFNGLGETLIGHTIVPROC glad_glGetLightiv; -#define glGetLightiv glad_glGetLightiv -typedef void (APIENTRYP PFNGLGETMAPDVPROC)(GLenum target, GLenum query, GLdouble *v); -GLAPI PFNGLGETMAPDVPROC glad_glGetMapdv; -#define glGetMapdv glad_glGetMapdv -typedef void (APIENTRYP PFNGLGETMAPFVPROC)(GLenum target, GLenum query, GLfloat *v); -GLAPI PFNGLGETMAPFVPROC glad_glGetMapfv; -#define glGetMapfv glad_glGetMapfv -typedef void (APIENTRYP PFNGLGETMAPIVPROC)(GLenum target, GLenum query, GLint *v); -GLAPI PFNGLGETMAPIVPROC glad_glGetMapiv; -#define glGetMapiv glad_glGetMapiv -typedef void (APIENTRYP PFNGLGETMATERIALFVPROC)(GLenum face, GLenum pname, GLfloat *params); -GLAPI PFNGLGETMATERIALFVPROC glad_glGetMaterialfv; -#define glGetMaterialfv glad_glGetMaterialfv -typedef void (APIENTRYP PFNGLGETMATERIALIVPROC)(GLenum face, GLenum pname, GLint *params); -GLAPI PFNGLGETMATERIALIVPROC glad_glGetMaterialiv; -#define glGetMaterialiv glad_glGetMaterialiv -typedef void (APIENTRYP PFNGLGETPIXELMAPFVPROC)(GLenum map, GLfloat *values); -GLAPI PFNGLGETPIXELMAPFVPROC glad_glGetPixelMapfv; -#define glGetPixelMapfv glad_glGetPixelMapfv -typedef void (APIENTRYP PFNGLGETPIXELMAPUIVPROC)(GLenum map, GLuint *values); -GLAPI PFNGLGETPIXELMAPUIVPROC glad_glGetPixelMapuiv; -#define glGetPixelMapuiv glad_glGetPixelMapuiv -typedef void (APIENTRYP PFNGLGETPIXELMAPUSVPROC)(GLenum map, GLushort *values); -GLAPI PFNGLGETPIXELMAPUSVPROC glad_glGetPixelMapusv; -#define glGetPixelMapusv glad_glGetPixelMapusv -typedef void (APIENTRYP PFNGLGETPOLYGONSTIPPLEPROC)(GLubyte *mask); -GLAPI PFNGLGETPOLYGONSTIPPLEPROC glad_glGetPolygonStipple; -#define glGetPolygonStipple glad_glGetPolygonStipple -typedef void (APIENTRYP PFNGLGETTEXENVFVPROC)(GLenum target, GLenum pname, GLfloat *params); -GLAPI PFNGLGETTEXENVFVPROC glad_glGetTexEnvfv; -#define glGetTexEnvfv glad_glGetTexEnvfv -typedef void (APIENTRYP PFNGLGETTEXENVIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETTEXENVIVPROC glad_glGetTexEnviv; -#define glGetTexEnviv glad_glGetTexEnviv -typedef void (APIENTRYP PFNGLGETTEXGENDVPROC)(GLenum coord, GLenum pname, GLdouble *params); -GLAPI PFNGLGETTEXGENDVPROC glad_glGetTexGendv; -#define glGetTexGendv glad_glGetTexGendv -typedef void (APIENTRYP PFNGLGETTEXGENFVPROC)(GLenum coord, GLenum pname, GLfloat *params); -GLAPI PFNGLGETTEXGENFVPROC glad_glGetTexGenfv; -#define glGetTexGenfv glad_glGetTexGenfv -typedef void (APIENTRYP PFNGLGETTEXGENIVPROC)(GLenum coord, GLenum pname, GLint *params); -GLAPI PFNGLGETTEXGENIVPROC glad_glGetTexGeniv; -#define glGetTexGeniv glad_glGetTexGeniv -typedef GLboolean (APIENTRYP PFNGLISLISTPROC)(GLuint list); -GLAPI PFNGLISLISTPROC glad_glIsList; -#define glIsList glad_glIsList -typedef void (APIENTRYP PFNGLFRUSTUMPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -GLAPI PFNGLFRUSTUMPROC glad_glFrustum; -#define glFrustum glad_glFrustum -typedef void (APIENTRYP PFNGLLOADIDENTITYPROC)(void); -GLAPI PFNGLLOADIDENTITYPROC glad_glLoadIdentity; -#define glLoadIdentity glad_glLoadIdentity -typedef void (APIENTRYP PFNGLLOADMATRIXFPROC)(const GLfloat *m); -GLAPI PFNGLLOADMATRIXFPROC glad_glLoadMatrixf; -#define glLoadMatrixf glad_glLoadMatrixf -typedef void (APIENTRYP PFNGLLOADMATRIXDPROC)(const GLdouble *m); -GLAPI PFNGLLOADMATRIXDPROC glad_glLoadMatrixd; -#define glLoadMatrixd glad_glLoadMatrixd -typedef void (APIENTRYP PFNGLMATRIXMODEPROC)(GLenum mode); -GLAPI PFNGLMATRIXMODEPROC glad_glMatrixMode; -#define glMatrixMode glad_glMatrixMode -typedef void (APIENTRYP PFNGLMULTMATRIXFPROC)(const GLfloat *m); -GLAPI PFNGLMULTMATRIXFPROC glad_glMultMatrixf; -#define glMultMatrixf glad_glMultMatrixf -typedef void (APIENTRYP PFNGLMULTMATRIXDPROC)(const GLdouble *m); -GLAPI PFNGLMULTMATRIXDPROC glad_glMultMatrixd; -#define glMultMatrixd glad_glMultMatrixd -typedef void (APIENTRYP PFNGLORTHOPROC)(GLdouble left, GLdouble right, GLdouble bottom, GLdouble top, GLdouble zNear, GLdouble zFar); -GLAPI PFNGLORTHOPROC glad_glOrtho; -#define glOrtho glad_glOrtho -typedef void (APIENTRYP PFNGLPOPMATRIXPROC)(void); -GLAPI PFNGLPOPMATRIXPROC glad_glPopMatrix; -#define glPopMatrix glad_glPopMatrix -typedef void (APIENTRYP PFNGLPUSHMATRIXPROC)(void); -GLAPI PFNGLPUSHMATRIXPROC glad_glPushMatrix; -#define glPushMatrix glad_glPushMatrix -typedef void (APIENTRYP PFNGLROTATEDPROC)(GLdouble angle, GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLROTATEDPROC glad_glRotated; -#define glRotated glad_glRotated -typedef void (APIENTRYP PFNGLROTATEFPROC)(GLfloat angle, GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLROTATEFPROC glad_glRotatef; -#define glRotatef glad_glRotatef -typedef void (APIENTRYP PFNGLSCALEDPROC)(GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLSCALEDPROC glad_glScaled; -#define glScaled glad_glScaled -typedef void (APIENTRYP PFNGLSCALEFPROC)(GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLSCALEFPROC glad_glScalef; -#define glScalef glad_glScalef -typedef void (APIENTRYP PFNGLTRANSLATEDPROC)(GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLTRANSLATEDPROC glad_glTranslated; -#define glTranslated glad_glTranslated -typedef void (APIENTRYP PFNGLTRANSLATEFPROC)(GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLTRANSLATEFPROC glad_glTranslatef; -#define glTranslatef glad_glTranslatef -#endif -#ifndef GL_VERSION_1_1 -#define GL_VERSION_1_1 1 -GLAPI int GLAD_GL_VERSION_1_1; -typedef void (APIENTRYP PFNGLDRAWARRAYSPROC)(GLenum mode, GLint first, GLsizei count); -GLAPI PFNGLDRAWARRAYSPROC glad_glDrawArrays; -#define glDrawArrays glad_glDrawArrays -typedef void (APIENTRYP PFNGLDRAWELEMENTSPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices); -GLAPI PFNGLDRAWELEMENTSPROC glad_glDrawElements; -#define glDrawElements glad_glDrawElements -typedef void (APIENTRYP PFNGLGETPOINTERVPROC)(GLenum pname, void **params); -GLAPI PFNGLGETPOINTERVPROC glad_glGetPointerv; -#define glGetPointerv glad_glGetPointerv -typedef void (APIENTRYP PFNGLPOLYGONOFFSETPROC)(GLfloat factor, GLfloat units); -GLAPI PFNGLPOLYGONOFFSETPROC glad_glPolygonOffset; -#define glPolygonOffset glad_glPolygonOffset -typedef void (APIENTRYP PFNGLCOPYTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLint border); -GLAPI PFNGLCOPYTEXIMAGE1DPROC glad_glCopyTexImage1D; -#define glCopyTexImage1D glad_glCopyTexImage1D -typedef void (APIENTRYP PFNGLCOPYTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLint x, GLint y, GLsizei width, GLsizei height, GLint border); -GLAPI PFNGLCOPYTEXIMAGE2DPROC glad_glCopyTexImage2D; -#define glCopyTexImage2D glad_glCopyTexImage2D -typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLint x, GLint y, GLsizei width); -GLAPI PFNGLCOPYTEXSUBIMAGE1DPROC glad_glCopyTexSubImage1D; -#define glCopyTexSubImage1D glad_glCopyTexSubImage1D -typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI PFNGLCOPYTEXSUBIMAGE2DPROC glad_glCopyTexSubImage2D; -#define glCopyTexSubImage2D glad_glCopyTexSubImage2D -typedef void (APIENTRYP PFNGLTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXSUBIMAGE1DPROC glad_glTexSubImage1D; -#define glTexSubImage1D glad_glTexSubImage1D -typedef void (APIENTRYP PFNGLTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXSUBIMAGE2DPROC glad_glTexSubImage2D; -#define glTexSubImage2D glad_glTexSubImage2D -typedef void (APIENTRYP PFNGLBINDTEXTUREPROC)(GLenum target, GLuint texture); -GLAPI PFNGLBINDTEXTUREPROC glad_glBindTexture; -#define glBindTexture glad_glBindTexture -typedef void (APIENTRYP PFNGLDELETETEXTURESPROC)(GLsizei n, const GLuint *textures); -GLAPI PFNGLDELETETEXTURESPROC glad_glDeleteTextures; -#define glDeleteTextures glad_glDeleteTextures -typedef void (APIENTRYP PFNGLGENTEXTURESPROC)(GLsizei n, GLuint *textures); -GLAPI PFNGLGENTEXTURESPROC glad_glGenTextures; -#define glGenTextures glad_glGenTextures -typedef GLboolean (APIENTRYP PFNGLISTEXTUREPROC)(GLuint texture); -GLAPI PFNGLISTEXTUREPROC glad_glIsTexture; -#define glIsTexture glad_glIsTexture -typedef void (APIENTRYP PFNGLARRAYELEMENTPROC)(GLint i); -GLAPI PFNGLARRAYELEMENTPROC glad_glArrayElement; -#define glArrayElement glad_glArrayElement -typedef void (APIENTRYP PFNGLCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLCOLORPOINTERPROC glad_glColorPointer; -#define glColorPointer glad_glColorPointer -typedef void (APIENTRYP PFNGLDISABLECLIENTSTATEPROC)(GLenum array); -GLAPI PFNGLDISABLECLIENTSTATEPROC glad_glDisableClientState; -#define glDisableClientState glad_glDisableClientState -typedef void (APIENTRYP PFNGLEDGEFLAGPOINTERPROC)(GLsizei stride, const void *pointer); -GLAPI PFNGLEDGEFLAGPOINTERPROC glad_glEdgeFlagPointer; -#define glEdgeFlagPointer glad_glEdgeFlagPointer -typedef void (APIENTRYP PFNGLENABLECLIENTSTATEPROC)(GLenum array); -GLAPI PFNGLENABLECLIENTSTATEPROC glad_glEnableClientState; -#define glEnableClientState glad_glEnableClientState -typedef void (APIENTRYP PFNGLINDEXPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLINDEXPOINTERPROC glad_glIndexPointer; -#define glIndexPointer glad_glIndexPointer -typedef void (APIENTRYP PFNGLINTERLEAVEDARRAYSPROC)(GLenum format, GLsizei stride, const void *pointer); -GLAPI PFNGLINTERLEAVEDARRAYSPROC glad_glInterleavedArrays; -#define glInterleavedArrays glad_glInterleavedArrays -typedef void (APIENTRYP PFNGLNORMALPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLNORMALPOINTERPROC glad_glNormalPointer; -#define glNormalPointer glad_glNormalPointer -typedef void (APIENTRYP PFNGLTEXCOORDPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLTEXCOORDPOINTERPROC glad_glTexCoordPointer; -#define glTexCoordPointer glad_glTexCoordPointer -typedef void (APIENTRYP PFNGLVERTEXPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLVERTEXPOINTERPROC glad_glVertexPointer; -#define glVertexPointer glad_glVertexPointer -typedef GLboolean (APIENTRYP PFNGLARETEXTURESRESIDENTPROC)(GLsizei n, const GLuint *textures, GLboolean *residences); -GLAPI PFNGLARETEXTURESRESIDENTPROC glad_glAreTexturesResident; -#define glAreTexturesResident glad_glAreTexturesResident -typedef void (APIENTRYP PFNGLPRIORITIZETEXTURESPROC)(GLsizei n, const GLuint *textures, const GLfloat *priorities); -GLAPI PFNGLPRIORITIZETEXTURESPROC glad_glPrioritizeTextures; -#define glPrioritizeTextures glad_glPrioritizeTextures -typedef void (APIENTRYP PFNGLINDEXUBPROC)(GLubyte c); -GLAPI PFNGLINDEXUBPROC glad_glIndexub; -#define glIndexub glad_glIndexub -typedef void (APIENTRYP PFNGLINDEXUBVPROC)(const GLubyte *c); -GLAPI PFNGLINDEXUBVPROC glad_glIndexubv; -#define glIndexubv glad_glIndexubv -typedef void (APIENTRYP PFNGLPOPCLIENTATTRIBPROC)(void); -GLAPI PFNGLPOPCLIENTATTRIBPROC glad_glPopClientAttrib; -#define glPopClientAttrib glad_glPopClientAttrib -typedef void (APIENTRYP PFNGLPUSHCLIENTATTRIBPROC)(GLbitfield mask); -GLAPI PFNGLPUSHCLIENTATTRIBPROC glad_glPushClientAttrib; -#define glPushClientAttrib glad_glPushClientAttrib -#endif -#ifndef GL_VERSION_1_2 -#define GL_VERSION_1_2 1 -GLAPI int GLAD_GL_VERSION_1_2; -typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices); -GLAPI PFNGLDRAWRANGEELEMENTSPROC glad_glDrawRangeElements; -#define glDrawRangeElements glad_glDrawRangeElements -typedef void (APIENTRYP PFNGLTEXIMAGE3DPROC)(GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXIMAGE3DPROC glad_glTexImage3D; -#define glTexImage3D glad_glTexImage3D -typedef void (APIENTRYP PFNGLTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLenum type, const void *pixels); -GLAPI PFNGLTEXSUBIMAGE3DPROC glad_glTexSubImage3D; -#define glTexSubImage3D glad_glTexSubImage3D -typedef void (APIENTRYP PFNGLCOPYTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLint x, GLint y, GLsizei width, GLsizei height); -GLAPI PFNGLCOPYTEXSUBIMAGE3DPROC glad_glCopyTexSubImage3D; -#define glCopyTexSubImage3D glad_glCopyTexSubImage3D -#endif -#ifndef GL_VERSION_1_3 -#define GL_VERSION_1_3 1 -GLAPI int GLAD_GL_VERSION_1_3; -typedef void (APIENTRYP PFNGLACTIVETEXTUREPROC)(GLenum texture); -GLAPI PFNGLACTIVETEXTUREPROC glad_glActiveTexture; -#define glActiveTexture glad_glActiveTexture -typedef void (APIENTRYP PFNGLSAMPLECOVERAGEPROC)(GLfloat value, GLboolean invert); -GLAPI PFNGLSAMPLECOVERAGEPROC glad_glSampleCoverage; -#define glSampleCoverage glad_glSampleCoverage -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE3DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXIMAGE3DPROC glad_glCompressedTexImage3D; -#define glCompressedTexImage3D glad_glCompressedTexImage3D -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE2DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLint border, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXIMAGE2DPROC glad_glCompressedTexImage2D; -#define glCompressedTexImage2D glad_glCompressedTexImage2D -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXIMAGE1DPROC)(GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXIMAGE1DPROC glad_glCompressedTexImage1D; -#define glCompressedTexImage1D glad_glCompressedTexImage1D -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLint zoffset, GLsizei width, GLsizei height, GLsizei depth, GLenum format, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE3DPROC glad_glCompressedTexSubImage3D; -#define glCompressedTexSubImage3D glad_glCompressedTexSubImage3D -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC)(GLenum target, GLint level, GLint xoffset, GLint yoffset, GLsizei width, GLsizei height, GLenum format, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE2DPROC glad_glCompressedTexSubImage2D; -#define glCompressedTexSubImage2D glad_glCompressedTexSubImage2D -typedef void (APIENTRYP PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC)(GLenum target, GLint level, GLint xoffset, GLsizei width, GLenum format, GLsizei imageSize, const void *data); -GLAPI PFNGLCOMPRESSEDTEXSUBIMAGE1DPROC glad_glCompressedTexSubImage1D; -#define glCompressedTexSubImage1D glad_glCompressedTexSubImage1D -typedef void (APIENTRYP PFNGLGETCOMPRESSEDTEXIMAGEPROC)(GLenum target, GLint level, void *img); -GLAPI PFNGLGETCOMPRESSEDTEXIMAGEPROC glad_glGetCompressedTexImage; -#define glGetCompressedTexImage glad_glGetCompressedTexImage -typedef void (APIENTRYP PFNGLCLIENTACTIVETEXTUREPROC)(GLenum texture); -GLAPI PFNGLCLIENTACTIVETEXTUREPROC glad_glClientActiveTexture; -#define glClientActiveTexture glad_glClientActiveTexture -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DPROC)(GLenum target, GLdouble s); -GLAPI PFNGLMULTITEXCOORD1DPROC glad_glMultiTexCoord1d; -#define glMultiTexCoord1d glad_glMultiTexCoord1d -typedef void (APIENTRYP PFNGLMULTITEXCOORD1DVPROC)(GLenum target, const GLdouble *v); -GLAPI PFNGLMULTITEXCOORD1DVPROC glad_glMultiTexCoord1dv; -#define glMultiTexCoord1dv glad_glMultiTexCoord1dv -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FPROC)(GLenum target, GLfloat s); -GLAPI PFNGLMULTITEXCOORD1FPROC glad_glMultiTexCoord1f; -#define glMultiTexCoord1f glad_glMultiTexCoord1f -typedef void (APIENTRYP PFNGLMULTITEXCOORD1FVPROC)(GLenum target, const GLfloat *v); -GLAPI PFNGLMULTITEXCOORD1FVPROC glad_glMultiTexCoord1fv; -#define glMultiTexCoord1fv glad_glMultiTexCoord1fv -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IPROC)(GLenum target, GLint s); -GLAPI PFNGLMULTITEXCOORD1IPROC glad_glMultiTexCoord1i; -#define glMultiTexCoord1i glad_glMultiTexCoord1i -typedef void (APIENTRYP PFNGLMULTITEXCOORD1IVPROC)(GLenum target, const GLint *v); -GLAPI PFNGLMULTITEXCOORD1IVPROC glad_glMultiTexCoord1iv; -#define glMultiTexCoord1iv glad_glMultiTexCoord1iv -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SPROC)(GLenum target, GLshort s); -GLAPI PFNGLMULTITEXCOORD1SPROC glad_glMultiTexCoord1s; -#define glMultiTexCoord1s glad_glMultiTexCoord1s -typedef void (APIENTRYP PFNGLMULTITEXCOORD1SVPROC)(GLenum target, const GLshort *v); -GLAPI PFNGLMULTITEXCOORD1SVPROC glad_glMultiTexCoord1sv; -#define glMultiTexCoord1sv glad_glMultiTexCoord1sv -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DPROC)(GLenum target, GLdouble s, GLdouble t); -GLAPI PFNGLMULTITEXCOORD2DPROC glad_glMultiTexCoord2d; -#define glMultiTexCoord2d glad_glMultiTexCoord2d -typedef void (APIENTRYP PFNGLMULTITEXCOORD2DVPROC)(GLenum target, const GLdouble *v); -GLAPI PFNGLMULTITEXCOORD2DVPROC glad_glMultiTexCoord2dv; -#define glMultiTexCoord2dv glad_glMultiTexCoord2dv -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FPROC)(GLenum target, GLfloat s, GLfloat t); -GLAPI PFNGLMULTITEXCOORD2FPROC glad_glMultiTexCoord2f; -#define glMultiTexCoord2f glad_glMultiTexCoord2f -typedef void (APIENTRYP PFNGLMULTITEXCOORD2FVPROC)(GLenum target, const GLfloat *v); -GLAPI PFNGLMULTITEXCOORD2FVPROC glad_glMultiTexCoord2fv; -#define glMultiTexCoord2fv glad_glMultiTexCoord2fv -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IPROC)(GLenum target, GLint s, GLint t); -GLAPI PFNGLMULTITEXCOORD2IPROC glad_glMultiTexCoord2i; -#define glMultiTexCoord2i glad_glMultiTexCoord2i -typedef void (APIENTRYP PFNGLMULTITEXCOORD2IVPROC)(GLenum target, const GLint *v); -GLAPI PFNGLMULTITEXCOORD2IVPROC glad_glMultiTexCoord2iv; -#define glMultiTexCoord2iv glad_glMultiTexCoord2iv -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SPROC)(GLenum target, GLshort s, GLshort t); -GLAPI PFNGLMULTITEXCOORD2SPROC glad_glMultiTexCoord2s; -#define glMultiTexCoord2s glad_glMultiTexCoord2s -typedef void (APIENTRYP PFNGLMULTITEXCOORD2SVPROC)(GLenum target, const GLshort *v); -GLAPI PFNGLMULTITEXCOORD2SVPROC glad_glMultiTexCoord2sv; -#define glMultiTexCoord2sv glad_glMultiTexCoord2sv -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r); -GLAPI PFNGLMULTITEXCOORD3DPROC glad_glMultiTexCoord3d; -#define glMultiTexCoord3d glad_glMultiTexCoord3d -typedef void (APIENTRYP PFNGLMULTITEXCOORD3DVPROC)(GLenum target, const GLdouble *v); -GLAPI PFNGLMULTITEXCOORD3DVPROC glad_glMultiTexCoord3dv; -#define glMultiTexCoord3dv glad_glMultiTexCoord3dv -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r); -GLAPI PFNGLMULTITEXCOORD3FPROC glad_glMultiTexCoord3f; -#define glMultiTexCoord3f glad_glMultiTexCoord3f -typedef void (APIENTRYP PFNGLMULTITEXCOORD3FVPROC)(GLenum target, const GLfloat *v); -GLAPI PFNGLMULTITEXCOORD3FVPROC glad_glMultiTexCoord3fv; -#define glMultiTexCoord3fv glad_glMultiTexCoord3fv -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IPROC)(GLenum target, GLint s, GLint t, GLint r); -GLAPI PFNGLMULTITEXCOORD3IPROC glad_glMultiTexCoord3i; -#define glMultiTexCoord3i glad_glMultiTexCoord3i -typedef void (APIENTRYP PFNGLMULTITEXCOORD3IVPROC)(GLenum target, const GLint *v); -GLAPI PFNGLMULTITEXCOORD3IVPROC glad_glMultiTexCoord3iv; -#define glMultiTexCoord3iv glad_glMultiTexCoord3iv -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SPROC)(GLenum target, GLshort s, GLshort t, GLshort r); -GLAPI PFNGLMULTITEXCOORD3SPROC glad_glMultiTexCoord3s; -#define glMultiTexCoord3s glad_glMultiTexCoord3s -typedef void (APIENTRYP PFNGLMULTITEXCOORD3SVPROC)(GLenum target, const GLshort *v); -GLAPI PFNGLMULTITEXCOORD3SVPROC glad_glMultiTexCoord3sv; -#define glMultiTexCoord3sv glad_glMultiTexCoord3sv -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DPROC)(GLenum target, GLdouble s, GLdouble t, GLdouble r, GLdouble q); -GLAPI PFNGLMULTITEXCOORD4DPROC glad_glMultiTexCoord4d; -#define glMultiTexCoord4d glad_glMultiTexCoord4d -typedef void (APIENTRYP PFNGLMULTITEXCOORD4DVPROC)(GLenum target, const GLdouble *v); -GLAPI PFNGLMULTITEXCOORD4DVPROC glad_glMultiTexCoord4dv; -#define glMultiTexCoord4dv glad_glMultiTexCoord4dv -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FPROC)(GLenum target, GLfloat s, GLfloat t, GLfloat r, GLfloat q); -GLAPI PFNGLMULTITEXCOORD4FPROC glad_glMultiTexCoord4f; -#define glMultiTexCoord4f glad_glMultiTexCoord4f -typedef void (APIENTRYP PFNGLMULTITEXCOORD4FVPROC)(GLenum target, const GLfloat *v); -GLAPI PFNGLMULTITEXCOORD4FVPROC glad_glMultiTexCoord4fv; -#define glMultiTexCoord4fv glad_glMultiTexCoord4fv -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IPROC)(GLenum target, GLint s, GLint t, GLint r, GLint q); -GLAPI PFNGLMULTITEXCOORD4IPROC glad_glMultiTexCoord4i; -#define glMultiTexCoord4i glad_glMultiTexCoord4i -typedef void (APIENTRYP PFNGLMULTITEXCOORD4IVPROC)(GLenum target, const GLint *v); -GLAPI PFNGLMULTITEXCOORD4IVPROC glad_glMultiTexCoord4iv; -#define glMultiTexCoord4iv glad_glMultiTexCoord4iv -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SPROC)(GLenum target, GLshort s, GLshort t, GLshort r, GLshort q); -GLAPI PFNGLMULTITEXCOORD4SPROC glad_glMultiTexCoord4s; -#define glMultiTexCoord4s glad_glMultiTexCoord4s -typedef void (APIENTRYP PFNGLMULTITEXCOORD4SVPROC)(GLenum target, const GLshort *v); -GLAPI PFNGLMULTITEXCOORD4SVPROC glad_glMultiTexCoord4sv; -#define glMultiTexCoord4sv glad_glMultiTexCoord4sv -typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXFPROC)(const GLfloat *m); -GLAPI PFNGLLOADTRANSPOSEMATRIXFPROC glad_glLoadTransposeMatrixf; -#define glLoadTransposeMatrixf glad_glLoadTransposeMatrixf -typedef void (APIENTRYP PFNGLLOADTRANSPOSEMATRIXDPROC)(const GLdouble *m); -GLAPI PFNGLLOADTRANSPOSEMATRIXDPROC glad_glLoadTransposeMatrixd; -#define glLoadTransposeMatrixd glad_glLoadTransposeMatrixd -typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXFPROC)(const GLfloat *m); -GLAPI PFNGLMULTTRANSPOSEMATRIXFPROC glad_glMultTransposeMatrixf; -#define glMultTransposeMatrixf glad_glMultTransposeMatrixf -typedef void (APIENTRYP PFNGLMULTTRANSPOSEMATRIXDPROC)(const GLdouble *m); -GLAPI PFNGLMULTTRANSPOSEMATRIXDPROC glad_glMultTransposeMatrixd; -#define glMultTransposeMatrixd glad_glMultTransposeMatrixd -#endif -#ifndef GL_VERSION_1_4 -#define GL_VERSION_1_4 1 -GLAPI int GLAD_GL_VERSION_1_4; -typedef void (APIENTRYP PFNGLBLENDFUNCSEPARATEPROC)(GLenum sfactorRGB, GLenum dfactorRGB, GLenum sfactorAlpha, GLenum dfactorAlpha); -GLAPI PFNGLBLENDFUNCSEPARATEPROC glad_glBlendFuncSeparate; -#define glBlendFuncSeparate glad_glBlendFuncSeparate -typedef void (APIENTRYP PFNGLMULTIDRAWARRAYSPROC)(GLenum mode, const GLint *first, const GLsizei *count, GLsizei drawcount); -GLAPI PFNGLMULTIDRAWARRAYSPROC glad_glMultiDrawArrays; -#define glMultiDrawArrays glad_glMultiDrawArrays -typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount); -GLAPI PFNGLMULTIDRAWELEMENTSPROC glad_glMultiDrawElements; -#define glMultiDrawElements glad_glMultiDrawElements -typedef void (APIENTRYP PFNGLPOINTPARAMETERFPROC)(GLenum pname, GLfloat param); -GLAPI PFNGLPOINTPARAMETERFPROC glad_glPointParameterf; -#define glPointParameterf glad_glPointParameterf -typedef void (APIENTRYP PFNGLPOINTPARAMETERFVPROC)(GLenum pname, const GLfloat *params); -GLAPI PFNGLPOINTPARAMETERFVPROC glad_glPointParameterfv; -#define glPointParameterfv glad_glPointParameterfv -typedef void (APIENTRYP PFNGLPOINTPARAMETERIPROC)(GLenum pname, GLint param); -GLAPI PFNGLPOINTPARAMETERIPROC glad_glPointParameteri; -#define glPointParameteri glad_glPointParameteri -typedef void (APIENTRYP PFNGLPOINTPARAMETERIVPROC)(GLenum pname, const GLint *params); -GLAPI PFNGLPOINTPARAMETERIVPROC glad_glPointParameteriv; -#define glPointParameteriv glad_glPointParameteriv -typedef void (APIENTRYP PFNGLFOGCOORDFPROC)(GLfloat coord); -GLAPI PFNGLFOGCOORDFPROC glad_glFogCoordf; -#define glFogCoordf glad_glFogCoordf -typedef void (APIENTRYP PFNGLFOGCOORDFVPROC)(const GLfloat *coord); -GLAPI PFNGLFOGCOORDFVPROC glad_glFogCoordfv; -#define glFogCoordfv glad_glFogCoordfv -typedef void (APIENTRYP PFNGLFOGCOORDDPROC)(GLdouble coord); -GLAPI PFNGLFOGCOORDDPROC glad_glFogCoordd; -#define glFogCoordd glad_glFogCoordd -typedef void (APIENTRYP PFNGLFOGCOORDDVPROC)(const GLdouble *coord); -GLAPI PFNGLFOGCOORDDVPROC glad_glFogCoorddv; -#define glFogCoorddv glad_glFogCoorddv -typedef void (APIENTRYP PFNGLFOGCOORDPOINTERPROC)(GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLFOGCOORDPOINTERPROC glad_glFogCoordPointer; -#define glFogCoordPointer glad_glFogCoordPointer -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BPROC)(GLbyte red, GLbyte green, GLbyte blue); -GLAPI PFNGLSECONDARYCOLOR3BPROC glad_glSecondaryColor3b; -#define glSecondaryColor3b glad_glSecondaryColor3b -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3BVPROC)(const GLbyte *v); -GLAPI PFNGLSECONDARYCOLOR3BVPROC glad_glSecondaryColor3bv; -#define glSecondaryColor3bv glad_glSecondaryColor3bv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DPROC)(GLdouble red, GLdouble green, GLdouble blue); -GLAPI PFNGLSECONDARYCOLOR3DPROC glad_glSecondaryColor3d; -#define glSecondaryColor3d glad_glSecondaryColor3d -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3DVPROC)(const GLdouble *v); -GLAPI PFNGLSECONDARYCOLOR3DVPROC glad_glSecondaryColor3dv; -#define glSecondaryColor3dv glad_glSecondaryColor3dv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FPROC)(GLfloat red, GLfloat green, GLfloat blue); -GLAPI PFNGLSECONDARYCOLOR3FPROC glad_glSecondaryColor3f; -#define glSecondaryColor3f glad_glSecondaryColor3f -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3FVPROC)(const GLfloat *v); -GLAPI PFNGLSECONDARYCOLOR3FVPROC glad_glSecondaryColor3fv; -#define glSecondaryColor3fv glad_glSecondaryColor3fv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IPROC)(GLint red, GLint green, GLint blue); -GLAPI PFNGLSECONDARYCOLOR3IPROC glad_glSecondaryColor3i; -#define glSecondaryColor3i glad_glSecondaryColor3i -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3IVPROC)(const GLint *v); -GLAPI PFNGLSECONDARYCOLOR3IVPROC glad_glSecondaryColor3iv; -#define glSecondaryColor3iv glad_glSecondaryColor3iv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SPROC)(GLshort red, GLshort green, GLshort blue); -GLAPI PFNGLSECONDARYCOLOR3SPROC glad_glSecondaryColor3s; -#define glSecondaryColor3s glad_glSecondaryColor3s -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3SVPROC)(const GLshort *v); -GLAPI PFNGLSECONDARYCOLOR3SVPROC glad_glSecondaryColor3sv; -#define glSecondaryColor3sv glad_glSecondaryColor3sv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBPROC)(GLubyte red, GLubyte green, GLubyte blue); -GLAPI PFNGLSECONDARYCOLOR3UBPROC glad_glSecondaryColor3ub; -#define glSecondaryColor3ub glad_glSecondaryColor3ub -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UBVPROC)(const GLubyte *v); -GLAPI PFNGLSECONDARYCOLOR3UBVPROC glad_glSecondaryColor3ubv; -#define glSecondaryColor3ubv glad_glSecondaryColor3ubv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIPROC)(GLuint red, GLuint green, GLuint blue); -GLAPI PFNGLSECONDARYCOLOR3UIPROC glad_glSecondaryColor3ui; -#define glSecondaryColor3ui glad_glSecondaryColor3ui -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3UIVPROC)(const GLuint *v); -GLAPI PFNGLSECONDARYCOLOR3UIVPROC glad_glSecondaryColor3uiv; -#define glSecondaryColor3uiv glad_glSecondaryColor3uiv -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USPROC)(GLushort red, GLushort green, GLushort blue); -GLAPI PFNGLSECONDARYCOLOR3USPROC glad_glSecondaryColor3us; -#define glSecondaryColor3us glad_glSecondaryColor3us -typedef void (APIENTRYP PFNGLSECONDARYCOLOR3USVPROC)(const GLushort *v); -GLAPI PFNGLSECONDARYCOLOR3USVPROC glad_glSecondaryColor3usv; -#define glSecondaryColor3usv glad_glSecondaryColor3usv -typedef void (APIENTRYP PFNGLSECONDARYCOLORPOINTERPROC)(GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLSECONDARYCOLORPOINTERPROC glad_glSecondaryColorPointer; -#define glSecondaryColorPointer glad_glSecondaryColorPointer -typedef void (APIENTRYP PFNGLWINDOWPOS2DPROC)(GLdouble x, GLdouble y); -GLAPI PFNGLWINDOWPOS2DPROC glad_glWindowPos2d; -#define glWindowPos2d glad_glWindowPos2d -typedef void (APIENTRYP PFNGLWINDOWPOS2DVPROC)(const GLdouble *v); -GLAPI PFNGLWINDOWPOS2DVPROC glad_glWindowPos2dv; -#define glWindowPos2dv glad_glWindowPos2dv -typedef void (APIENTRYP PFNGLWINDOWPOS2FPROC)(GLfloat x, GLfloat y); -GLAPI PFNGLWINDOWPOS2FPROC glad_glWindowPos2f; -#define glWindowPos2f glad_glWindowPos2f -typedef void (APIENTRYP PFNGLWINDOWPOS2FVPROC)(const GLfloat *v); -GLAPI PFNGLWINDOWPOS2FVPROC glad_glWindowPos2fv; -#define glWindowPos2fv glad_glWindowPos2fv -typedef void (APIENTRYP PFNGLWINDOWPOS2IPROC)(GLint x, GLint y); -GLAPI PFNGLWINDOWPOS2IPROC glad_glWindowPos2i; -#define glWindowPos2i glad_glWindowPos2i -typedef void (APIENTRYP PFNGLWINDOWPOS2IVPROC)(const GLint *v); -GLAPI PFNGLWINDOWPOS2IVPROC glad_glWindowPos2iv; -#define glWindowPos2iv glad_glWindowPos2iv -typedef void (APIENTRYP PFNGLWINDOWPOS2SPROC)(GLshort x, GLshort y); -GLAPI PFNGLWINDOWPOS2SPROC glad_glWindowPos2s; -#define glWindowPos2s glad_glWindowPos2s -typedef void (APIENTRYP PFNGLWINDOWPOS2SVPROC)(const GLshort *v); -GLAPI PFNGLWINDOWPOS2SVPROC glad_glWindowPos2sv; -#define glWindowPos2sv glad_glWindowPos2sv -typedef void (APIENTRYP PFNGLWINDOWPOS3DPROC)(GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLWINDOWPOS3DPROC glad_glWindowPos3d; -#define glWindowPos3d glad_glWindowPos3d -typedef void (APIENTRYP PFNGLWINDOWPOS3DVPROC)(const GLdouble *v); -GLAPI PFNGLWINDOWPOS3DVPROC glad_glWindowPos3dv; -#define glWindowPos3dv glad_glWindowPos3dv -typedef void (APIENTRYP PFNGLWINDOWPOS3FPROC)(GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLWINDOWPOS3FPROC glad_glWindowPos3f; -#define glWindowPos3f glad_glWindowPos3f -typedef void (APIENTRYP PFNGLWINDOWPOS3FVPROC)(const GLfloat *v); -GLAPI PFNGLWINDOWPOS3FVPROC glad_glWindowPos3fv; -#define glWindowPos3fv glad_glWindowPos3fv -typedef void (APIENTRYP PFNGLWINDOWPOS3IPROC)(GLint x, GLint y, GLint z); -GLAPI PFNGLWINDOWPOS3IPROC glad_glWindowPos3i; -#define glWindowPos3i glad_glWindowPos3i -typedef void (APIENTRYP PFNGLWINDOWPOS3IVPROC)(const GLint *v); -GLAPI PFNGLWINDOWPOS3IVPROC glad_glWindowPos3iv; -#define glWindowPos3iv glad_glWindowPos3iv -typedef void (APIENTRYP PFNGLWINDOWPOS3SPROC)(GLshort x, GLshort y, GLshort z); -GLAPI PFNGLWINDOWPOS3SPROC glad_glWindowPos3s; -#define glWindowPos3s glad_glWindowPos3s -typedef void (APIENTRYP PFNGLWINDOWPOS3SVPROC)(const GLshort *v); -GLAPI PFNGLWINDOWPOS3SVPROC glad_glWindowPos3sv; -#define glWindowPos3sv glad_glWindowPos3sv -typedef void (APIENTRYP PFNGLBLENDCOLORPROC)(GLfloat red, GLfloat green, GLfloat blue, GLfloat alpha); -GLAPI PFNGLBLENDCOLORPROC glad_glBlendColor; -#define glBlendColor glad_glBlendColor -typedef void (APIENTRYP PFNGLBLENDEQUATIONPROC)(GLenum mode); -GLAPI PFNGLBLENDEQUATIONPROC glad_glBlendEquation; -#define glBlendEquation glad_glBlendEquation -#endif -#ifndef GL_VERSION_1_5 -#define GL_VERSION_1_5 1 -GLAPI int GLAD_GL_VERSION_1_5; -typedef void (APIENTRYP PFNGLGENQUERIESPROC)(GLsizei n, GLuint *ids); -GLAPI PFNGLGENQUERIESPROC glad_glGenQueries; -#define glGenQueries glad_glGenQueries -typedef void (APIENTRYP PFNGLDELETEQUERIESPROC)(GLsizei n, const GLuint *ids); -GLAPI PFNGLDELETEQUERIESPROC glad_glDeleteQueries; -#define glDeleteQueries glad_glDeleteQueries -typedef GLboolean (APIENTRYP PFNGLISQUERYPROC)(GLuint id); -GLAPI PFNGLISQUERYPROC glad_glIsQuery; -#define glIsQuery glad_glIsQuery -typedef void (APIENTRYP PFNGLBEGINQUERYPROC)(GLenum target, GLuint id); -GLAPI PFNGLBEGINQUERYPROC glad_glBeginQuery; -#define glBeginQuery glad_glBeginQuery -typedef void (APIENTRYP PFNGLENDQUERYPROC)(GLenum target); -GLAPI PFNGLENDQUERYPROC glad_glEndQuery; -#define glEndQuery glad_glEndQuery -typedef void (APIENTRYP PFNGLGETQUERYIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETQUERYIVPROC glad_glGetQueryiv; -#define glGetQueryiv glad_glGetQueryiv -typedef void (APIENTRYP PFNGLGETQUERYOBJECTIVPROC)(GLuint id, GLenum pname, GLint *params); -GLAPI PFNGLGETQUERYOBJECTIVPROC glad_glGetQueryObjectiv; -#define glGetQueryObjectiv glad_glGetQueryObjectiv -typedef void (APIENTRYP PFNGLGETQUERYOBJECTUIVPROC)(GLuint id, GLenum pname, GLuint *params); -GLAPI PFNGLGETQUERYOBJECTUIVPROC glad_glGetQueryObjectuiv; -#define glGetQueryObjectuiv glad_glGetQueryObjectuiv -typedef void (APIENTRYP PFNGLBINDBUFFERPROC)(GLenum target, GLuint buffer); -GLAPI PFNGLBINDBUFFERPROC glad_glBindBuffer; -#define glBindBuffer glad_glBindBuffer -typedef void (APIENTRYP PFNGLDELETEBUFFERSPROC)(GLsizei n, const GLuint *buffers); -GLAPI PFNGLDELETEBUFFERSPROC glad_glDeleteBuffers; -#define glDeleteBuffers glad_glDeleteBuffers -typedef void (APIENTRYP PFNGLGENBUFFERSPROC)(GLsizei n, GLuint *buffers); -GLAPI PFNGLGENBUFFERSPROC glad_glGenBuffers; -#define glGenBuffers glad_glGenBuffers -typedef GLboolean (APIENTRYP PFNGLISBUFFERPROC)(GLuint buffer); -GLAPI PFNGLISBUFFERPROC glad_glIsBuffer; -#define glIsBuffer glad_glIsBuffer -typedef void (APIENTRYP PFNGLBUFFERDATAPROC)(GLenum target, GLsizeiptr size, const void *data, GLenum usage); -GLAPI PFNGLBUFFERDATAPROC glad_glBufferData; -#define glBufferData glad_glBufferData -typedef void (APIENTRYP PFNGLBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, const void *data); -GLAPI PFNGLBUFFERSUBDATAPROC glad_glBufferSubData; -#define glBufferSubData glad_glBufferSubData -typedef void (APIENTRYP PFNGLGETBUFFERSUBDATAPROC)(GLenum target, GLintptr offset, GLsizeiptr size, void *data); -GLAPI PFNGLGETBUFFERSUBDATAPROC glad_glGetBufferSubData; -#define glGetBufferSubData glad_glGetBufferSubData -typedef void * (APIENTRYP PFNGLMAPBUFFERPROC)(GLenum target, GLenum access); -GLAPI PFNGLMAPBUFFERPROC glad_glMapBuffer; -#define glMapBuffer glad_glMapBuffer -typedef GLboolean (APIENTRYP PFNGLUNMAPBUFFERPROC)(GLenum target); -GLAPI PFNGLUNMAPBUFFERPROC glad_glUnmapBuffer; -#define glUnmapBuffer glad_glUnmapBuffer -typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETBUFFERPARAMETERIVPROC glad_glGetBufferParameteriv; -#define glGetBufferParameteriv glad_glGetBufferParameteriv -typedef void (APIENTRYP PFNGLGETBUFFERPOINTERVPROC)(GLenum target, GLenum pname, void **params); -GLAPI PFNGLGETBUFFERPOINTERVPROC glad_glGetBufferPointerv; -#define glGetBufferPointerv glad_glGetBufferPointerv -#endif -#ifndef GL_VERSION_2_0 -#define GL_VERSION_2_0 1 -GLAPI int GLAD_GL_VERSION_2_0; -typedef void (APIENTRYP PFNGLBLENDEQUATIONSEPARATEPROC)(GLenum modeRGB, GLenum modeAlpha); -GLAPI PFNGLBLENDEQUATIONSEPARATEPROC glad_glBlendEquationSeparate; -#define glBlendEquationSeparate glad_glBlendEquationSeparate -typedef void (APIENTRYP PFNGLDRAWBUFFERSPROC)(GLsizei n, const GLenum *bufs); -GLAPI PFNGLDRAWBUFFERSPROC glad_glDrawBuffers; -#define glDrawBuffers glad_glDrawBuffers -typedef void (APIENTRYP PFNGLSTENCILOPSEPARATEPROC)(GLenum face, GLenum sfail, GLenum dpfail, GLenum dppass); -GLAPI PFNGLSTENCILOPSEPARATEPROC glad_glStencilOpSeparate; -#define glStencilOpSeparate glad_glStencilOpSeparate -typedef void (APIENTRYP PFNGLSTENCILFUNCSEPARATEPROC)(GLenum face, GLenum func, GLint ref, GLuint mask); -GLAPI PFNGLSTENCILFUNCSEPARATEPROC glad_glStencilFuncSeparate; -#define glStencilFuncSeparate glad_glStencilFuncSeparate -typedef void (APIENTRYP PFNGLSTENCILMASKSEPARATEPROC)(GLenum face, GLuint mask); -GLAPI PFNGLSTENCILMASKSEPARATEPROC glad_glStencilMaskSeparate; -#define glStencilMaskSeparate glad_glStencilMaskSeparate -typedef void (APIENTRYP PFNGLATTACHSHADERPROC)(GLuint program, GLuint shader); -GLAPI PFNGLATTACHSHADERPROC glad_glAttachShader; -#define glAttachShader glad_glAttachShader -typedef void (APIENTRYP PFNGLBINDATTRIBLOCATIONPROC)(GLuint program, GLuint index, const GLchar *name); -GLAPI PFNGLBINDATTRIBLOCATIONPROC glad_glBindAttribLocation; -#define glBindAttribLocation glad_glBindAttribLocation -typedef void (APIENTRYP PFNGLCOMPILESHADERPROC)(GLuint shader); -GLAPI PFNGLCOMPILESHADERPROC glad_glCompileShader; -#define glCompileShader glad_glCompileShader -typedef GLuint (APIENTRYP PFNGLCREATEPROGRAMPROC)(void); -GLAPI PFNGLCREATEPROGRAMPROC glad_glCreateProgram; -#define glCreateProgram glad_glCreateProgram -typedef GLuint (APIENTRYP PFNGLCREATESHADERPROC)(GLenum type); -GLAPI PFNGLCREATESHADERPROC glad_glCreateShader; -#define glCreateShader glad_glCreateShader -typedef void (APIENTRYP PFNGLDELETEPROGRAMPROC)(GLuint program); -GLAPI PFNGLDELETEPROGRAMPROC glad_glDeleteProgram; -#define glDeleteProgram glad_glDeleteProgram -typedef void (APIENTRYP PFNGLDELETESHADERPROC)(GLuint shader); -GLAPI PFNGLDELETESHADERPROC glad_glDeleteShader; -#define glDeleteShader glad_glDeleteShader -typedef void (APIENTRYP PFNGLDETACHSHADERPROC)(GLuint program, GLuint shader); -GLAPI PFNGLDETACHSHADERPROC glad_glDetachShader; -#define glDetachShader glad_glDetachShader -typedef void (APIENTRYP PFNGLDISABLEVERTEXATTRIBARRAYPROC)(GLuint index); -GLAPI PFNGLDISABLEVERTEXATTRIBARRAYPROC glad_glDisableVertexAttribArray; -#define glDisableVertexAttribArray glad_glDisableVertexAttribArray -typedef void (APIENTRYP PFNGLENABLEVERTEXATTRIBARRAYPROC)(GLuint index); -GLAPI PFNGLENABLEVERTEXATTRIBARRAYPROC glad_glEnableVertexAttribArray; -#define glEnableVertexAttribArray glad_glEnableVertexAttribArray -typedef void (APIENTRYP PFNGLGETACTIVEATTRIBPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name); -GLAPI PFNGLGETACTIVEATTRIBPROC glad_glGetActiveAttrib; -#define glGetActiveAttrib glad_glGetActiveAttrib -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLint *size, GLenum *type, GLchar *name); -GLAPI PFNGLGETACTIVEUNIFORMPROC glad_glGetActiveUniform; -#define glGetActiveUniform glad_glGetActiveUniform -typedef void (APIENTRYP PFNGLGETATTACHEDSHADERSPROC)(GLuint program, GLsizei maxCount, GLsizei *count, GLuint *shaders); -GLAPI PFNGLGETATTACHEDSHADERSPROC glad_glGetAttachedShaders; -#define glGetAttachedShaders glad_glGetAttachedShaders -typedef GLint (APIENTRYP PFNGLGETATTRIBLOCATIONPROC)(GLuint program, const GLchar *name); -GLAPI PFNGLGETATTRIBLOCATIONPROC glad_glGetAttribLocation; -#define glGetAttribLocation glad_glGetAttribLocation -typedef void (APIENTRYP PFNGLGETPROGRAMIVPROC)(GLuint program, GLenum pname, GLint *params); -GLAPI PFNGLGETPROGRAMIVPROC glad_glGetProgramiv; -#define glGetProgramiv glad_glGetProgramiv -typedef void (APIENTRYP PFNGLGETPROGRAMINFOLOGPROC)(GLuint program, GLsizei bufSize, GLsizei *length, GLchar *infoLog); -GLAPI PFNGLGETPROGRAMINFOLOGPROC glad_glGetProgramInfoLog; -#define glGetProgramInfoLog glad_glGetProgramInfoLog -typedef void (APIENTRYP PFNGLGETSHADERIVPROC)(GLuint shader, GLenum pname, GLint *params); -GLAPI PFNGLGETSHADERIVPROC glad_glGetShaderiv; -#define glGetShaderiv glad_glGetShaderiv -typedef void (APIENTRYP PFNGLGETSHADERINFOLOGPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *infoLog); -GLAPI PFNGLGETSHADERINFOLOGPROC glad_glGetShaderInfoLog; -#define glGetShaderInfoLog glad_glGetShaderInfoLog -typedef void (APIENTRYP PFNGLGETSHADERSOURCEPROC)(GLuint shader, GLsizei bufSize, GLsizei *length, GLchar *source); -GLAPI PFNGLGETSHADERSOURCEPROC glad_glGetShaderSource; -#define glGetShaderSource glad_glGetShaderSource -typedef GLint (APIENTRYP PFNGLGETUNIFORMLOCATIONPROC)(GLuint program, const GLchar *name); -GLAPI PFNGLGETUNIFORMLOCATIONPROC glad_glGetUniformLocation; -#define glGetUniformLocation glad_glGetUniformLocation -typedef void (APIENTRYP PFNGLGETUNIFORMFVPROC)(GLuint program, GLint location, GLfloat *params); -GLAPI PFNGLGETUNIFORMFVPROC glad_glGetUniformfv; -#define glGetUniformfv glad_glGetUniformfv -typedef void (APIENTRYP PFNGLGETUNIFORMIVPROC)(GLuint program, GLint location, GLint *params); -GLAPI PFNGLGETUNIFORMIVPROC glad_glGetUniformiv; -#define glGetUniformiv glad_glGetUniformiv -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBDVPROC)(GLuint index, GLenum pname, GLdouble *params); -GLAPI PFNGLGETVERTEXATTRIBDVPROC glad_glGetVertexAttribdv; -#define glGetVertexAttribdv glad_glGetVertexAttribdv -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBFVPROC)(GLuint index, GLenum pname, GLfloat *params); -GLAPI PFNGLGETVERTEXATTRIBFVPROC glad_glGetVertexAttribfv; -#define glGetVertexAttribfv glad_glGetVertexAttribfv -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIVPROC)(GLuint index, GLenum pname, GLint *params); -GLAPI PFNGLGETVERTEXATTRIBIVPROC glad_glGetVertexAttribiv; -#define glGetVertexAttribiv glad_glGetVertexAttribiv -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBPOINTERVPROC)(GLuint index, GLenum pname, void **pointer); -GLAPI PFNGLGETVERTEXATTRIBPOINTERVPROC glad_glGetVertexAttribPointerv; -#define glGetVertexAttribPointerv glad_glGetVertexAttribPointerv -typedef GLboolean (APIENTRYP PFNGLISPROGRAMPROC)(GLuint program); -GLAPI PFNGLISPROGRAMPROC glad_glIsProgram; -#define glIsProgram glad_glIsProgram -typedef GLboolean (APIENTRYP PFNGLISSHADERPROC)(GLuint shader); -GLAPI PFNGLISSHADERPROC glad_glIsShader; -#define glIsShader glad_glIsShader -typedef void (APIENTRYP PFNGLLINKPROGRAMPROC)(GLuint program); -GLAPI PFNGLLINKPROGRAMPROC glad_glLinkProgram; -#define glLinkProgram glad_glLinkProgram -typedef void (APIENTRYP PFNGLSHADERSOURCEPROC)(GLuint shader, GLsizei count, const GLchar *const*string, const GLint *length); -GLAPI PFNGLSHADERSOURCEPROC glad_glShaderSource; -#define glShaderSource glad_glShaderSource -typedef void (APIENTRYP PFNGLUSEPROGRAMPROC)(GLuint program); -GLAPI PFNGLUSEPROGRAMPROC glad_glUseProgram; -#define glUseProgram glad_glUseProgram -typedef void (APIENTRYP PFNGLUNIFORM1FPROC)(GLint location, GLfloat v0); -GLAPI PFNGLUNIFORM1FPROC glad_glUniform1f; -#define glUniform1f glad_glUniform1f -typedef void (APIENTRYP PFNGLUNIFORM2FPROC)(GLint location, GLfloat v0, GLfloat v1); -GLAPI PFNGLUNIFORM2FPROC glad_glUniform2f; -#define glUniform2f glad_glUniform2f -typedef void (APIENTRYP PFNGLUNIFORM3FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2); -GLAPI PFNGLUNIFORM3FPROC glad_glUniform3f; -#define glUniform3f glad_glUniform3f -typedef void (APIENTRYP PFNGLUNIFORM4FPROC)(GLint location, GLfloat v0, GLfloat v1, GLfloat v2, GLfloat v3); -GLAPI PFNGLUNIFORM4FPROC glad_glUniform4f; -#define glUniform4f glad_glUniform4f -typedef void (APIENTRYP PFNGLUNIFORM1IPROC)(GLint location, GLint v0); -GLAPI PFNGLUNIFORM1IPROC glad_glUniform1i; -#define glUniform1i glad_glUniform1i -typedef void (APIENTRYP PFNGLUNIFORM2IPROC)(GLint location, GLint v0, GLint v1); -GLAPI PFNGLUNIFORM2IPROC glad_glUniform2i; -#define glUniform2i glad_glUniform2i -typedef void (APIENTRYP PFNGLUNIFORM3IPROC)(GLint location, GLint v0, GLint v1, GLint v2); -GLAPI PFNGLUNIFORM3IPROC glad_glUniform3i; -#define glUniform3i glad_glUniform3i -typedef void (APIENTRYP PFNGLUNIFORM4IPROC)(GLint location, GLint v0, GLint v1, GLint v2, GLint v3); -GLAPI PFNGLUNIFORM4IPROC glad_glUniform4i; -#define glUniform4i glad_glUniform4i -typedef void (APIENTRYP PFNGLUNIFORM1FVPROC)(GLint location, GLsizei count, const GLfloat *value); -GLAPI PFNGLUNIFORM1FVPROC glad_glUniform1fv; -#define glUniform1fv glad_glUniform1fv -typedef void (APIENTRYP PFNGLUNIFORM2FVPROC)(GLint location, GLsizei count, const GLfloat *value); -GLAPI PFNGLUNIFORM2FVPROC glad_glUniform2fv; -#define glUniform2fv glad_glUniform2fv -typedef void (APIENTRYP PFNGLUNIFORM3FVPROC)(GLint location, GLsizei count, const GLfloat *value); -GLAPI PFNGLUNIFORM3FVPROC glad_glUniform3fv; -#define glUniform3fv glad_glUniform3fv -typedef void (APIENTRYP PFNGLUNIFORM4FVPROC)(GLint location, GLsizei count, const GLfloat *value); -GLAPI PFNGLUNIFORM4FVPROC glad_glUniform4fv; -#define glUniform4fv glad_glUniform4fv -typedef void (APIENTRYP PFNGLUNIFORM1IVPROC)(GLint location, GLsizei count, const GLint *value); -GLAPI PFNGLUNIFORM1IVPROC glad_glUniform1iv; -#define glUniform1iv glad_glUniform1iv -typedef void (APIENTRYP PFNGLUNIFORM2IVPROC)(GLint location, GLsizei count, const GLint *value); -GLAPI PFNGLUNIFORM2IVPROC glad_glUniform2iv; -#define glUniform2iv glad_glUniform2iv -typedef void (APIENTRYP PFNGLUNIFORM3IVPROC)(GLint location, GLsizei count, const GLint *value); -GLAPI PFNGLUNIFORM3IVPROC glad_glUniform3iv; -#define glUniform3iv glad_glUniform3iv -typedef void (APIENTRYP PFNGLUNIFORM4IVPROC)(GLint location, GLsizei count, const GLint *value); -GLAPI PFNGLUNIFORM4IVPROC glad_glUniform4iv; -#define glUniform4iv glad_glUniform4iv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX2FVPROC glad_glUniformMatrix2fv; -#define glUniformMatrix2fv glad_glUniformMatrix2fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX3FVPROC glad_glUniformMatrix3fv; -#define glUniformMatrix3fv glad_glUniformMatrix3fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX4FVPROC glad_glUniformMatrix4fv; -#define glUniformMatrix4fv glad_glUniformMatrix4fv -typedef void (APIENTRYP PFNGLVALIDATEPROGRAMPROC)(GLuint program); -GLAPI PFNGLVALIDATEPROGRAMPROC glad_glValidateProgram; -#define glValidateProgram glad_glValidateProgram -typedef void (APIENTRYP PFNGLVERTEXATTRIB1DPROC)(GLuint index, GLdouble x); -GLAPI PFNGLVERTEXATTRIB1DPROC glad_glVertexAttrib1d; -#define glVertexAttrib1d glad_glVertexAttrib1d -typedef void (APIENTRYP PFNGLVERTEXATTRIB1DVPROC)(GLuint index, const GLdouble *v); -GLAPI PFNGLVERTEXATTRIB1DVPROC glad_glVertexAttrib1dv; -#define glVertexAttrib1dv glad_glVertexAttrib1dv -typedef void (APIENTRYP PFNGLVERTEXATTRIB1FPROC)(GLuint index, GLfloat x); -GLAPI PFNGLVERTEXATTRIB1FPROC glad_glVertexAttrib1f; -#define glVertexAttrib1f glad_glVertexAttrib1f -typedef void (APIENTRYP PFNGLVERTEXATTRIB1FVPROC)(GLuint index, const GLfloat *v); -GLAPI PFNGLVERTEXATTRIB1FVPROC glad_glVertexAttrib1fv; -#define glVertexAttrib1fv glad_glVertexAttrib1fv -typedef void (APIENTRYP PFNGLVERTEXATTRIB1SPROC)(GLuint index, GLshort x); -GLAPI PFNGLVERTEXATTRIB1SPROC glad_glVertexAttrib1s; -#define glVertexAttrib1s glad_glVertexAttrib1s -typedef void (APIENTRYP PFNGLVERTEXATTRIB1SVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIB1SVPROC glad_glVertexAttrib1sv; -#define glVertexAttrib1sv glad_glVertexAttrib1sv -typedef void (APIENTRYP PFNGLVERTEXATTRIB2DPROC)(GLuint index, GLdouble x, GLdouble y); -GLAPI PFNGLVERTEXATTRIB2DPROC glad_glVertexAttrib2d; -#define glVertexAttrib2d glad_glVertexAttrib2d -typedef void (APIENTRYP PFNGLVERTEXATTRIB2DVPROC)(GLuint index, const GLdouble *v); -GLAPI PFNGLVERTEXATTRIB2DVPROC glad_glVertexAttrib2dv; -#define glVertexAttrib2dv glad_glVertexAttrib2dv -typedef void (APIENTRYP PFNGLVERTEXATTRIB2FPROC)(GLuint index, GLfloat x, GLfloat y); -GLAPI PFNGLVERTEXATTRIB2FPROC glad_glVertexAttrib2f; -#define glVertexAttrib2f glad_glVertexAttrib2f -typedef void (APIENTRYP PFNGLVERTEXATTRIB2FVPROC)(GLuint index, const GLfloat *v); -GLAPI PFNGLVERTEXATTRIB2FVPROC glad_glVertexAttrib2fv; -#define glVertexAttrib2fv glad_glVertexAttrib2fv -typedef void (APIENTRYP PFNGLVERTEXATTRIB2SPROC)(GLuint index, GLshort x, GLshort y); -GLAPI PFNGLVERTEXATTRIB2SPROC glad_glVertexAttrib2s; -#define glVertexAttrib2s glad_glVertexAttrib2s -typedef void (APIENTRYP PFNGLVERTEXATTRIB2SVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIB2SVPROC glad_glVertexAttrib2sv; -#define glVertexAttrib2sv glad_glVertexAttrib2sv -typedef void (APIENTRYP PFNGLVERTEXATTRIB3DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z); -GLAPI PFNGLVERTEXATTRIB3DPROC glad_glVertexAttrib3d; -#define glVertexAttrib3d glad_glVertexAttrib3d -typedef void (APIENTRYP PFNGLVERTEXATTRIB3DVPROC)(GLuint index, const GLdouble *v); -GLAPI PFNGLVERTEXATTRIB3DVPROC glad_glVertexAttrib3dv; -#define glVertexAttrib3dv glad_glVertexAttrib3dv -typedef void (APIENTRYP PFNGLVERTEXATTRIB3FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z); -GLAPI PFNGLVERTEXATTRIB3FPROC glad_glVertexAttrib3f; -#define glVertexAttrib3f glad_glVertexAttrib3f -typedef void (APIENTRYP PFNGLVERTEXATTRIB3FVPROC)(GLuint index, const GLfloat *v); -GLAPI PFNGLVERTEXATTRIB3FVPROC glad_glVertexAttrib3fv; -#define glVertexAttrib3fv glad_glVertexAttrib3fv -typedef void (APIENTRYP PFNGLVERTEXATTRIB3SPROC)(GLuint index, GLshort x, GLshort y, GLshort z); -GLAPI PFNGLVERTEXATTRIB3SPROC glad_glVertexAttrib3s; -#define glVertexAttrib3s glad_glVertexAttrib3s -typedef void (APIENTRYP PFNGLVERTEXATTRIB3SVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIB3SVPROC glad_glVertexAttrib3sv; -#define glVertexAttrib3sv glad_glVertexAttrib3sv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NBVPROC)(GLuint index, const GLbyte *v); -GLAPI PFNGLVERTEXATTRIB4NBVPROC glad_glVertexAttrib4Nbv; -#define glVertexAttrib4Nbv glad_glVertexAttrib4Nbv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NIVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIB4NIVPROC glad_glVertexAttrib4Niv; -#define glVertexAttrib4Niv glad_glVertexAttrib4Niv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NSVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIB4NSVPROC glad_glVertexAttrib4Nsv; -#define glVertexAttrib4Nsv glad_glVertexAttrib4Nsv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBPROC)(GLuint index, GLubyte x, GLubyte y, GLubyte z, GLubyte w); -GLAPI PFNGLVERTEXATTRIB4NUBPROC glad_glVertexAttrib4Nub; -#define glVertexAttrib4Nub glad_glVertexAttrib4Nub -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUBVPROC)(GLuint index, const GLubyte *v); -GLAPI PFNGLVERTEXATTRIB4NUBVPROC glad_glVertexAttrib4Nubv; -#define glVertexAttrib4Nubv glad_glVertexAttrib4Nubv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIB4NUIVPROC glad_glVertexAttrib4Nuiv; -#define glVertexAttrib4Nuiv glad_glVertexAttrib4Nuiv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4NUSVPROC)(GLuint index, const GLushort *v); -GLAPI PFNGLVERTEXATTRIB4NUSVPROC glad_glVertexAttrib4Nusv; -#define glVertexAttrib4Nusv glad_glVertexAttrib4Nusv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4BVPROC)(GLuint index, const GLbyte *v); -GLAPI PFNGLVERTEXATTRIB4BVPROC glad_glVertexAttrib4bv; -#define glVertexAttrib4bv glad_glVertexAttrib4bv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4DPROC)(GLuint index, GLdouble x, GLdouble y, GLdouble z, GLdouble w); -GLAPI PFNGLVERTEXATTRIB4DPROC glad_glVertexAttrib4d; -#define glVertexAttrib4d glad_glVertexAttrib4d -typedef void (APIENTRYP PFNGLVERTEXATTRIB4DVPROC)(GLuint index, const GLdouble *v); -GLAPI PFNGLVERTEXATTRIB4DVPROC glad_glVertexAttrib4dv; -#define glVertexAttrib4dv glad_glVertexAttrib4dv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4FPROC)(GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w); -GLAPI PFNGLVERTEXATTRIB4FPROC glad_glVertexAttrib4f; -#define glVertexAttrib4f glad_glVertexAttrib4f -typedef void (APIENTRYP PFNGLVERTEXATTRIB4FVPROC)(GLuint index, const GLfloat *v); -GLAPI PFNGLVERTEXATTRIB4FVPROC glad_glVertexAttrib4fv; -#define glVertexAttrib4fv glad_glVertexAttrib4fv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4IVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIB4IVPROC glad_glVertexAttrib4iv; -#define glVertexAttrib4iv glad_glVertexAttrib4iv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4SPROC)(GLuint index, GLshort x, GLshort y, GLshort z, GLshort w); -GLAPI PFNGLVERTEXATTRIB4SPROC glad_glVertexAttrib4s; -#define glVertexAttrib4s glad_glVertexAttrib4s -typedef void (APIENTRYP PFNGLVERTEXATTRIB4SVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIB4SVPROC glad_glVertexAttrib4sv; -#define glVertexAttrib4sv glad_glVertexAttrib4sv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4UBVPROC)(GLuint index, const GLubyte *v); -GLAPI PFNGLVERTEXATTRIB4UBVPROC glad_glVertexAttrib4ubv; -#define glVertexAttrib4ubv glad_glVertexAttrib4ubv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4UIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIB4UIVPROC glad_glVertexAttrib4uiv; -#define glVertexAttrib4uiv glad_glVertexAttrib4uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIB4USVPROC)(GLuint index, const GLushort *v); -GLAPI PFNGLVERTEXATTRIB4USVPROC glad_glVertexAttrib4usv; -#define glVertexAttrib4usv glad_glVertexAttrib4usv -typedef void (APIENTRYP PFNGLVERTEXATTRIBPOINTERPROC)(GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const void *pointer); -GLAPI PFNGLVERTEXATTRIBPOINTERPROC glad_glVertexAttribPointer; -#define glVertexAttribPointer glad_glVertexAttribPointer -#endif -#ifndef GL_VERSION_2_1 -#define GL_VERSION_2_1 1 -GLAPI int GLAD_GL_VERSION_2_1; -typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX2X3FVPROC glad_glUniformMatrix2x3fv; -#define glUniformMatrix2x3fv glad_glUniformMatrix2x3fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX3X2FVPROC glad_glUniformMatrix3x2fv; -#define glUniformMatrix3x2fv glad_glUniformMatrix3x2fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX2X4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX2X4FVPROC glad_glUniformMatrix2x4fv; -#define glUniformMatrix2x4fv glad_glUniformMatrix2x4fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X2FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX4X2FVPROC glad_glUniformMatrix4x2fv; -#define glUniformMatrix4x2fv glad_glUniformMatrix4x2fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX3X4FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX3X4FVPROC glad_glUniformMatrix3x4fv; -#define glUniformMatrix3x4fv glad_glUniformMatrix3x4fv -typedef void (APIENTRYP PFNGLUNIFORMMATRIX4X3FVPROC)(GLint location, GLsizei count, GLboolean transpose, const GLfloat *value); -GLAPI PFNGLUNIFORMMATRIX4X3FVPROC glad_glUniformMatrix4x3fv; -#define glUniformMatrix4x3fv glad_glUniformMatrix4x3fv -#endif -#ifndef GL_VERSION_3_0 -#define GL_VERSION_3_0 1 -GLAPI int GLAD_GL_VERSION_3_0; -typedef void (APIENTRYP PFNGLCOLORMASKIPROC)(GLuint index, GLboolean r, GLboolean g, GLboolean b, GLboolean a); -GLAPI PFNGLCOLORMASKIPROC glad_glColorMaski; -#define glColorMaski glad_glColorMaski -typedef void (APIENTRYP PFNGLGETBOOLEANI_VPROC)(GLenum target, GLuint index, GLboolean *data); -GLAPI PFNGLGETBOOLEANI_VPROC glad_glGetBooleani_v; -#define glGetBooleani_v glad_glGetBooleani_v -typedef void (APIENTRYP PFNGLGETINTEGERI_VPROC)(GLenum target, GLuint index, GLint *data); -GLAPI PFNGLGETINTEGERI_VPROC glad_glGetIntegeri_v; -#define glGetIntegeri_v glad_glGetIntegeri_v -typedef void (APIENTRYP PFNGLENABLEIPROC)(GLenum target, GLuint index); -GLAPI PFNGLENABLEIPROC glad_glEnablei; -#define glEnablei glad_glEnablei -typedef void (APIENTRYP PFNGLDISABLEIPROC)(GLenum target, GLuint index); -GLAPI PFNGLDISABLEIPROC glad_glDisablei; -#define glDisablei glad_glDisablei -typedef GLboolean (APIENTRYP PFNGLISENABLEDIPROC)(GLenum target, GLuint index); -GLAPI PFNGLISENABLEDIPROC glad_glIsEnabledi; -#define glIsEnabledi glad_glIsEnabledi -typedef void (APIENTRYP PFNGLBEGINTRANSFORMFEEDBACKPROC)(GLenum primitiveMode); -GLAPI PFNGLBEGINTRANSFORMFEEDBACKPROC glad_glBeginTransformFeedback; -#define glBeginTransformFeedback glad_glBeginTransformFeedback -typedef void (APIENTRYP PFNGLENDTRANSFORMFEEDBACKPROC)(void); -GLAPI PFNGLENDTRANSFORMFEEDBACKPROC glad_glEndTransformFeedback; -#define glEndTransformFeedback glad_glEndTransformFeedback -typedef void (APIENTRYP PFNGLBINDBUFFERRANGEPROC)(GLenum target, GLuint index, GLuint buffer, GLintptr offset, GLsizeiptr size); -GLAPI PFNGLBINDBUFFERRANGEPROC glad_glBindBufferRange; -#define glBindBufferRange glad_glBindBufferRange -typedef void (APIENTRYP PFNGLBINDBUFFERBASEPROC)(GLenum target, GLuint index, GLuint buffer); -GLAPI PFNGLBINDBUFFERBASEPROC glad_glBindBufferBase; -#define glBindBufferBase glad_glBindBufferBase -typedef void (APIENTRYP PFNGLTRANSFORMFEEDBACKVARYINGSPROC)(GLuint program, GLsizei count, const GLchar *const*varyings, GLenum bufferMode); -GLAPI PFNGLTRANSFORMFEEDBACKVARYINGSPROC glad_glTransformFeedbackVaryings; -#define glTransformFeedbackVaryings glad_glTransformFeedbackVaryings -typedef void (APIENTRYP PFNGLGETTRANSFORMFEEDBACKVARYINGPROC)(GLuint program, GLuint index, GLsizei bufSize, GLsizei *length, GLsizei *size, GLenum *type, GLchar *name); -GLAPI PFNGLGETTRANSFORMFEEDBACKVARYINGPROC glad_glGetTransformFeedbackVarying; -#define glGetTransformFeedbackVarying glad_glGetTransformFeedbackVarying -typedef void (APIENTRYP PFNGLCLAMPCOLORPROC)(GLenum target, GLenum clamp); -GLAPI PFNGLCLAMPCOLORPROC glad_glClampColor; -#define glClampColor glad_glClampColor -typedef void (APIENTRYP PFNGLBEGINCONDITIONALRENDERPROC)(GLuint id, GLenum mode); -GLAPI PFNGLBEGINCONDITIONALRENDERPROC glad_glBeginConditionalRender; -#define glBeginConditionalRender glad_glBeginConditionalRender -typedef void (APIENTRYP PFNGLENDCONDITIONALRENDERPROC)(void); -GLAPI PFNGLENDCONDITIONALRENDERPROC glad_glEndConditionalRender; -#define glEndConditionalRender glad_glEndConditionalRender -typedef void (APIENTRYP PFNGLVERTEXATTRIBIPOINTERPROC)(GLuint index, GLint size, GLenum type, GLsizei stride, const void *pointer); -GLAPI PFNGLVERTEXATTRIBIPOINTERPROC glad_glVertexAttribIPointer; -#define glVertexAttribIPointer glad_glVertexAttribIPointer -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIIVPROC)(GLuint index, GLenum pname, GLint *params); -GLAPI PFNGLGETVERTEXATTRIBIIVPROC glad_glGetVertexAttribIiv; -#define glGetVertexAttribIiv glad_glGetVertexAttribIiv -typedef void (APIENTRYP PFNGLGETVERTEXATTRIBIUIVPROC)(GLuint index, GLenum pname, GLuint *params); -GLAPI PFNGLGETVERTEXATTRIBIUIVPROC glad_glGetVertexAttribIuiv; -#define glGetVertexAttribIuiv glad_glGetVertexAttribIuiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IPROC)(GLuint index, GLint x); -GLAPI PFNGLVERTEXATTRIBI1IPROC glad_glVertexAttribI1i; -#define glVertexAttribI1i glad_glVertexAttribI1i -typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IPROC)(GLuint index, GLint x, GLint y); -GLAPI PFNGLVERTEXATTRIBI2IPROC glad_glVertexAttribI2i; -#define glVertexAttribI2i glad_glVertexAttribI2i -typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IPROC)(GLuint index, GLint x, GLint y, GLint z); -GLAPI PFNGLVERTEXATTRIBI3IPROC glad_glVertexAttribI3i; -#define glVertexAttribI3i glad_glVertexAttribI3i -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IPROC)(GLuint index, GLint x, GLint y, GLint z, GLint w); -GLAPI PFNGLVERTEXATTRIBI4IPROC glad_glVertexAttribI4i; -#define glVertexAttribI4i glad_glVertexAttribI4i -typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIPROC)(GLuint index, GLuint x); -GLAPI PFNGLVERTEXATTRIBI1UIPROC glad_glVertexAttribI1ui; -#define glVertexAttribI1ui glad_glVertexAttribI1ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIPROC)(GLuint index, GLuint x, GLuint y); -GLAPI PFNGLVERTEXATTRIBI2UIPROC glad_glVertexAttribI2ui; -#define glVertexAttribI2ui glad_glVertexAttribI2ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z); -GLAPI PFNGLVERTEXATTRIBI3UIPROC glad_glVertexAttribI3ui; -#define glVertexAttribI3ui glad_glVertexAttribI3ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIPROC)(GLuint index, GLuint x, GLuint y, GLuint z, GLuint w); -GLAPI PFNGLVERTEXATTRIBI4UIPROC glad_glVertexAttribI4ui; -#define glVertexAttribI4ui glad_glVertexAttribI4ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBI1IVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIBI1IVPROC glad_glVertexAttribI1iv; -#define glVertexAttribI1iv glad_glVertexAttribI1iv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI2IVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIBI2IVPROC glad_glVertexAttribI2iv; -#define glVertexAttribI2iv glad_glVertexAttribI2iv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI3IVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIBI3IVPROC glad_glVertexAttribI3iv; -#define glVertexAttribI3iv glad_glVertexAttribI3iv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4IVPROC)(GLuint index, const GLint *v); -GLAPI PFNGLVERTEXATTRIBI4IVPROC glad_glVertexAttribI4iv; -#define glVertexAttribI4iv glad_glVertexAttribI4iv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI1UIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIBI1UIVPROC glad_glVertexAttribI1uiv; -#define glVertexAttribI1uiv glad_glVertexAttribI1uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI2UIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIBI2UIVPROC glad_glVertexAttribI2uiv; -#define glVertexAttribI2uiv glad_glVertexAttribI2uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI3UIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIBI3UIVPROC glad_glVertexAttribI3uiv; -#define glVertexAttribI3uiv glad_glVertexAttribI3uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UIVPROC)(GLuint index, const GLuint *v); -GLAPI PFNGLVERTEXATTRIBI4UIVPROC glad_glVertexAttribI4uiv; -#define glVertexAttribI4uiv glad_glVertexAttribI4uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4BVPROC)(GLuint index, const GLbyte *v); -GLAPI PFNGLVERTEXATTRIBI4BVPROC glad_glVertexAttribI4bv; -#define glVertexAttribI4bv glad_glVertexAttribI4bv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4SVPROC)(GLuint index, const GLshort *v); -GLAPI PFNGLVERTEXATTRIBI4SVPROC glad_glVertexAttribI4sv; -#define glVertexAttribI4sv glad_glVertexAttribI4sv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4UBVPROC)(GLuint index, const GLubyte *v); -GLAPI PFNGLVERTEXATTRIBI4UBVPROC glad_glVertexAttribI4ubv; -#define glVertexAttribI4ubv glad_glVertexAttribI4ubv -typedef void (APIENTRYP PFNGLVERTEXATTRIBI4USVPROC)(GLuint index, const GLushort *v); -GLAPI PFNGLVERTEXATTRIBI4USVPROC glad_glVertexAttribI4usv; -#define glVertexAttribI4usv glad_glVertexAttribI4usv -typedef void (APIENTRYP PFNGLGETUNIFORMUIVPROC)(GLuint program, GLint location, GLuint *params); -GLAPI PFNGLGETUNIFORMUIVPROC glad_glGetUniformuiv; -#define glGetUniformuiv glad_glGetUniformuiv -typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONPROC)(GLuint program, GLuint color, const GLchar *name); -GLAPI PFNGLBINDFRAGDATALOCATIONPROC glad_glBindFragDataLocation; -#define glBindFragDataLocation glad_glBindFragDataLocation -typedef GLint (APIENTRYP PFNGLGETFRAGDATALOCATIONPROC)(GLuint program, const GLchar *name); -GLAPI PFNGLGETFRAGDATALOCATIONPROC glad_glGetFragDataLocation; -#define glGetFragDataLocation glad_glGetFragDataLocation -typedef void (APIENTRYP PFNGLUNIFORM1UIPROC)(GLint location, GLuint v0); -GLAPI PFNGLUNIFORM1UIPROC glad_glUniform1ui; -#define glUniform1ui glad_glUniform1ui -typedef void (APIENTRYP PFNGLUNIFORM2UIPROC)(GLint location, GLuint v0, GLuint v1); -GLAPI PFNGLUNIFORM2UIPROC glad_glUniform2ui; -#define glUniform2ui glad_glUniform2ui -typedef void (APIENTRYP PFNGLUNIFORM3UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2); -GLAPI PFNGLUNIFORM3UIPROC glad_glUniform3ui; -#define glUniform3ui glad_glUniform3ui -typedef void (APIENTRYP PFNGLUNIFORM4UIPROC)(GLint location, GLuint v0, GLuint v1, GLuint v2, GLuint v3); -GLAPI PFNGLUNIFORM4UIPROC glad_glUniform4ui; -#define glUniform4ui glad_glUniform4ui -typedef void (APIENTRYP PFNGLUNIFORM1UIVPROC)(GLint location, GLsizei count, const GLuint *value); -GLAPI PFNGLUNIFORM1UIVPROC glad_glUniform1uiv; -#define glUniform1uiv glad_glUniform1uiv -typedef void (APIENTRYP PFNGLUNIFORM2UIVPROC)(GLint location, GLsizei count, const GLuint *value); -GLAPI PFNGLUNIFORM2UIVPROC glad_glUniform2uiv; -#define glUniform2uiv glad_glUniform2uiv -typedef void (APIENTRYP PFNGLUNIFORM3UIVPROC)(GLint location, GLsizei count, const GLuint *value); -GLAPI PFNGLUNIFORM3UIVPROC glad_glUniform3uiv; -#define glUniform3uiv glad_glUniform3uiv -typedef void (APIENTRYP PFNGLUNIFORM4UIVPROC)(GLint location, GLsizei count, const GLuint *value); -GLAPI PFNGLUNIFORM4UIVPROC glad_glUniform4uiv; -#define glUniform4uiv glad_glUniform4uiv -typedef void (APIENTRYP PFNGLTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, const GLint *params); -GLAPI PFNGLTEXPARAMETERIIVPROC glad_glTexParameterIiv; -#define glTexParameterIiv glad_glTexParameterIiv -typedef void (APIENTRYP PFNGLTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, const GLuint *params); -GLAPI PFNGLTEXPARAMETERIUIVPROC glad_glTexParameterIuiv; -#define glTexParameterIuiv glad_glTexParameterIuiv -typedef void (APIENTRYP PFNGLGETTEXPARAMETERIIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETTEXPARAMETERIIVPROC glad_glGetTexParameterIiv; -#define glGetTexParameterIiv glad_glGetTexParameterIiv -typedef void (APIENTRYP PFNGLGETTEXPARAMETERIUIVPROC)(GLenum target, GLenum pname, GLuint *params); -GLAPI PFNGLGETTEXPARAMETERIUIVPROC glad_glGetTexParameterIuiv; -#define glGetTexParameterIuiv glad_glGetTexParameterIuiv -typedef void (APIENTRYP PFNGLCLEARBUFFERIVPROC)(GLenum buffer, GLint drawbuffer, const GLint *value); -GLAPI PFNGLCLEARBUFFERIVPROC glad_glClearBufferiv; -#define glClearBufferiv glad_glClearBufferiv -typedef void (APIENTRYP PFNGLCLEARBUFFERUIVPROC)(GLenum buffer, GLint drawbuffer, const GLuint *value); -GLAPI PFNGLCLEARBUFFERUIVPROC glad_glClearBufferuiv; -#define glClearBufferuiv glad_glClearBufferuiv -typedef void (APIENTRYP PFNGLCLEARBUFFERFVPROC)(GLenum buffer, GLint drawbuffer, const GLfloat *value); -GLAPI PFNGLCLEARBUFFERFVPROC glad_glClearBufferfv; -#define glClearBufferfv glad_glClearBufferfv -typedef void (APIENTRYP PFNGLCLEARBUFFERFIPROC)(GLenum buffer, GLint drawbuffer, GLfloat depth, GLint stencil); -GLAPI PFNGLCLEARBUFFERFIPROC glad_glClearBufferfi; -#define glClearBufferfi glad_glClearBufferfi -typedef const GLubyte * (APIENTRYP PFNGLGETSTRINGIPROC)(GLenum name, GLuint index); -GLAPI PFNGLGETSTRINGIPROC glad_glGetStringi; -#define glGetStringi glad_glGetStringi -typedef GLboolean (APIENTRYP PFNGLISRENDERBUFFERPROC)(GLuint renderbuffer); -GLAPI PFNGLISRENDERBUFFERPROC glad_glIsRenderbuffer; -#define glIsRenderbuffer glad_glIsRenderbuffer -typedef void (APIENTRYP PFNGLBINDRENDERBUFFERPROC)(GLenum target, GLuint renderbuffer); -GLAPI PFNGLBINDRENDERBUFFERPROC glad_glBindRenderbuffer; -#define glBindRenderbuffer glad_glBindRenderbuffer -typedef void (APIENTRYP PFNGLDELETERENDERBUFFERSPROC)(GLsizei n, const GLuint *renderbuffers); -GLAPI PFNGLDELETERENDERBUFFERSPROC glad_glDeleteRenderbuffers; -#define glDeleteRenderbuffers glad_glDeleteRenderbuffers -typedef void (APIENTRYP PFNGLGENRENDERBUFFERSPROC)(GLsizei n, GLuint *renderbuffers); -GLAPI PFNGLGENRENDERBUFFERSPROC glad_glGenRenderbuffers; -#define glGenRenderbuffers glad_glGenRenderbuffers -typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEPROC)(GLenum target, GLenum internalformat, GLsizei width, GLsizei height); -GLAPI PFNGLRENDERBUFFERSTORAGEPROC glad_glRenderbufferStorage; -#define glRenderbufferStorage glad_glRenderbufferStorage -typedef void (APIENTRYP PFNGLGETRENDERBUFFERPARAMETERIVPROC)(GLenum target, GLenum pname, GLint *params); -GLAPI PFNGLGETRENDERBUFFERPARAMETERIVPROC glad_glGetRenderbufferParameteriv; -#define glGetRenderbufferParameteriv glad_glGetRenderbufferParameteriv -typedef GLboolean (APIENTRYP PFNGLISFRAMEBUFFERPROC)(GLuint framebuffer); -GLAPI PFNGLISFRAMEBUFFERPROC glad_glIsFramebuffer; -#define glIsFramebuffer glad_glIsFramebuffer -typedef void (APIENTRYP PFNGLBINDFRAMEBUFFERPROC)(GLenum target, GLuint framebuffer); -GLAPI PFNGLBINDFRAMEBUFFERPROC glad_glBindFramebuffer; -#define glBindFramebuffer glad_glBindFramebuffer -typedef void (APIENTRYP PFNGLDELETEFRAMEBUFFERSPROC)(GLsizei n, const GLuint *framebuffers); -GLAPI PFNGLDELETEFRAMEBUFFERSPROC glad_glDeleteFramebuffers; -#define glDeleteFramebuffers glad_glDeleteFramebuffers -typedef void (APIENTRYP PFNGLGENFRAMEBUFFERSPROC)(GLsizei n, GLuint *framebuffers); -GLAPI PFNGLGENFRAMEBUFFERSPROC glad_glGenFramebuffers; -#define glGenFramebuffers glad_glGenFramebuffers -typedef GLenum (APIENTRYP PFNGLCHECKFRAMEBUFFERSTATUSPROC)(GLenum target); -GLAPI PFNGLCHECKFRAMEBUFFERSTATUSPROC glad_glCheckFramebufferStatus; -#define glCheckFramebufferStatus glad_glCheckFramebufferStatus -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE1DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -GLAPI PFNGLFRAMEBUFFERTEXTURE1DPROC glad_glFramebufferTexture1D; -#define glFramebufferTexture1D glad_glFramebufferTexture1D -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE2DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level); -GLAPI PFNGLFRAMEBUFFERTEXTURE2DPROC glad_glFramebufferTexture2D; -#define glFramebufferTexture2D glad_glFramebufferTexture2D -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURE3DPROC)(GLenum target, GLenum attachment, GLenum textarget, GLuint texture, GLint level, GLint zoffset); -GLAPI PFNGLFRAMEBUFFERTEXTURE3DPROC glad_glFramebufferTexture3D; -#define glFramebufferTexture3D glad_glFramebufferTexture3D -typedef void (APIENTRYP PFNGLFRAMEBUFFERRENDERBUFFERPROC)(GLenum target, GLenum attachment, GLenum renderbuffertarget, GLuint renderbuffer); -GLAPI PFNGLFRAMEBUFFERRENDERBUFFERPROC glad_glFramebufferRenderbuffer; -#define glFramebufferRenderbuffer glad_glFramebufferRenderbuffer -typedef void (APIENTRYP PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC)(GLenum target, GLenum attachment, GLenum pname, GLint *params); -GLAPI PFNGLGETFRAMEBUFFERATTACHMENTPARAMETERIVPROC glad_glGetFramebufferAttachmentParameteriv; -#define glGetFramebufferAttachmentParameteriv glad_glGetFramebufferAttachmentParameteriv -typedef void (APIENTRYP PFNGLGENERATEMIPMAPPROC)(GLenum target); -GLAPI PFNGLGENERATEMIPMAPPROC glad_glGenerateMipmap; -#define glGenerateMipmap glad_glGenerateMipmap -typedef void (APIENTRYP PFNGLBLITFRAMEBUFFERPROC)(GLint srcX0, GLint srcY0, GLint srcX1, GLint srcY1, GLint dstX0, GLint dstY0, GLint dstX1, GLint dstY1, GLbitfield mask, GLenum filter); -GLAPI PFNGLBLITFRAMEBUFFERPROC glad_glBlitFramebuffer; -#define glBlitFramebuffer glad_glBlitFramebuffer -typedef void (APIENTRYP PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height); -GLAPI PFNGLRENDERBUFFERSTORAGEMULTISAMPLEPROC glad_glRenderbufferStorageMultisample; -#define glRenderbufferStorageMultisample glad_glRenderbufferStorageMultisample -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTURELAYERPROC)(GLenum target, GLenum attachment, GLuint texture, GLint level, GLint layer); -GLAPI PFNGLFRAMEBUFFERTEXTURELAYERPROC glad_glFramebufferTextureLayer; -#define glFramebufferTextureLayer glad_glFramebufferTextureLayer -typedef void * (APIENTRYP PFNGLMAPBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length, GLbitfield access); -GLAPI PFNGLMAPBUFFERRANGEPROC glad_glMapBufferRange; -#define glMapBufferRange glad_glMapBufferRange -typedef void (APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEPROC)(GLenum target, GLintptr offset, GLsizeiptr length); -GLAPI PFNGLFLUSHMAPPEDBUFFERRANGEPROC glad_glFlushMappedBufferRange; -#define glFlushMappedBufferRange glad_glFlushMappedBufferRange -typedef void (APIENTRYP PFNGLBINDVERTEXARRAYPROC)(GLuint array); -GLAPI PFNGLBINDVERTEXARRAYPROC glad_glBindVertexArray; -#define glBindVertexArray glad_glBindVertexArray -typedef void (APIENTRYP PFNGLDELETEVERTEXARRAYSPROC)(GLsizei n, const GLuint *arrays); -GLAPI PFNGLDELETEVERTEXARRAYSPROC glad_glDeleteVertexArrays; -#define glDeleteVertexArrays glad_glDeleteVertexArrays -typedef void (APIENTRYP PFNGLGENVERTEXARRAYSPROC)(GLsizei n, GLuint *arrays); -GLAPI PFNGLGENVERTEXARRAYSPROC glad_glGenVertexArrays; -#define glGenVertexArrays glad_glGenVertexArrays -typedef GLboolean (APIENTRYP PFNGLISVERTEXARRAYPROC)(GLuint array); -GLAPI PFNGLISVERTEXARRAYPROC glad_glIsVertexArray; -#define glIsVertexArray glad_glIsVertexArray -#endif -#ifndef GL_VERSION_3_1 -#define GL_VERSION_3_1 1 -GLAPI int GLAD_GL_VERSION_3_1; -typedef void (APIENTRYP PFNGLDRAWARRAYSINSTANCEDPROC)(GLenum mode, GLint first, GLsizei count, GLsizei instancecount); -GLAPI PFNGLDRAWARRAYSINSTANCEDPROC glad_glDrawArraysInstanced; -#define glDrawArraysInstanced glad_glDrawArraysInstanced -typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount); -GLAPI PFNGLDRAWELEMENTSINSTANCEDPROC glad_glDrawElementsInstanced; -#define glDrawElementsInstanced glad_glDrawElementsInstanced -typedef void (APIENTRYP PFNGLTEXBUFFERPROC)(GLenum target, GLenum internalformat, GLuint buffer); -GLAPI PFNGLTEXBUFFERPROC glad_glTexBuffer; -#define glTexBuffer glad_glTexBuffer -typedef void (APIENTRYP PFNGLPRIMITIVERESTARTINDEXPROC)(GLuint index); -GLAPI PFNGLPRIMITIVERESTARTINDEXPROC glad_glPrimitiveRestartIndex; -#define glPrimitiveRestartIndex glad_glPrimitiveRestartIndex -typedef void (APIENTRYP PFNGLCOPYBUFFERSUBDATAPROC)(GLenum readTarget, GLenum writeTarget, GLintptr readOffset, GLintptr writeOffset, GLsizeiptr size); -GLAPI PFNGLCOPYBUFFERSUBDATAPROC glad_glCopyBufferSubData; -#define glCopyBufferSubData glad_glCopyBufferSubData -typedef void (APIENTRYP PFNGLGETUNIFORMINDICESPROC)(GLuint program, GLsizei uniformCount, const GLchar *const*uniformNames, GLuint *uniformIndices); -GLAPI PFNGLGETUNIFORMINDICESPROC glad_glGetUniformIndices; -#define glGetUniformIndices glad_glGetUniformIndices -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMSIVPROC)(GLuint program, GLsizei uniformCount, const GLuint *uniformIndices, GLenum pname, GLint *params); -GLAPI PFNGLGETACTIVEUNIFORMSIVPROC glad_glGetActiveUniformsiv; -#define glGetActiveUniformsiv glad_glGetActiveUniformsiv -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMNAMEPROC)(GLuint program, GLuint uniformIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformName); -GLAPI PFNGLGETACTIVEUNIFORMNAMEPROC glad_glGetActiveUniformName; -#define glGetActiveUniformName glad_glGetActiveUniformName -typedef GLuint (APIENTRYP PFNGLGETUNIFORMBLOCKINDEXPROC)(GLuint program, const GLchar *uniformBlockName); -GLAPI PFNGLGETUNIFORMBLOCKINDEXPROC glad_glGetUniformBlockIndex; -#define glGetUniformBlockIndex glad_glGetUniformBlockIndex -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKIVPROC)(GLuint program, GLuint uniformBlockIndex, GLenum pname, GLint *params); -GLAPI PFNGLGETACTIVEUNIFORMBLOCKIVPROC glad_glGetActiveUniformBlockiv; -#define glGetActiveUniformBlockiv glad_glGetActiveUniformBlockiv -typedef void (APIENTRYP PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC)(GLuint program, GLuint uniformBlockIndex, GLsizei bufSize, GLsizei *length, GLchar *uniformBlockName); -GLAPI PFNGLGETACTIVEUNIFORMBLOCKNAMEPROC glad_glGetActiveUniformBlockName; -#define glGetActiveUniformBlockName glad_glGetActiveUniformBlockName -typedef void (APIENTRYP PFNGLUNIFORMBLOCKBINDINGPROC)(GLuint program, GLuint uniformBlockIndex, GLuint uniformBlockBinding); -GLAPI PFNGLUNIFORMBLOCKBINDINGPROC glad_glUniformBlockBinding; -#define glUniformBlockBinding glad_glUniformBlockBinding -#endif -#ifndef GL_VERSION_3_2 -#define GL_VERSION_3_2 1 -GLAPI int GLAD_GL_VERSION_3_2; -typedef void (APIENTRYP PFNGLDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLint basevertex); -GLAPI PFNGLDRAWELEMENTSBASEVERTEXPROC glad_glDrawElementsBaseVertex; -#define glDrawElementsBaseVertex glad_glDrawElementsBaseVertex -typedef void (APIENTRYP PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC)(GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const void *indices, GLint basevertex); -GLAPI PFNGLDRAWRANGEELEMENTSBASEVERTEXPROC glad_glDrawRangeElementsBaseVertex; -#define glDrawRangeElementsBaseVertex glad_glDrawRangeElementsBaseVertex -typedef void (APIENTRYP PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC)(GLenum mode, GLsizei count, GLenum type, const void *indices, GLsizei instancecount, GLint basevertex); -GLAPI PFNGLDRAWELEMENTSINSTANCEDBASEVERTEXPROC glad_glDrawElementsInstancedBaseVertex; -#define glDrawElementsInstancedBaseVertex glad_glDrawElementsInstancedBaseVertex -typedef void (APIENTRYP PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC)(GLenum mode, const GLsizei *count, GLenum type, const void *const*indices, GLsizei drawcount, const GLint *basevertex); -GLAPI PFNGLMULTIDRAWELEMENTSBASEVERTEXPROC glad_glMultiDrawElementsBaseVertex; -#define glMultiDrawElementsBaseVertex glad_glMultiDrawElementsBaseVertex -typedef void (APIENTRYP PFNGLPROVOKINGVERTEXPROC)(GLenum mode); -GLAPI PFNGLPROVOKINGVERTEXPROC glad_glProvokingVertex; -#define glProvokingVertex glad_glProvokingVertex -typedef GLsync (APIENTRYP PFNGLFENCESYNCPROC)(GLenum condition, GLbitfield flags); -GLAPI PFNGLFENCESYNCPROC glad_glFenceSync; -#define glFenceSync glad_glFenceSync -typedef GLboolean (APIENTRYP PFNGLISSYNCPROC)(GLsync sync); -GLAPI PFNGLISSYNCPROC glad_glIsSync; -#define glIsSync glad_glIsSync -typedef void (APIENTRYP PFNGLDELETESYNCPROC)(GLsync sync); -GLAPI PFNGLDELETESYNCPROC glad_glDeleteSync; -#define glDeleteSync glad_glDeleteSync -typedef GLenum (APIENTRYP PFNGLCLIENTWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); -GLAPI PFNGLCLIENTWAITSYNCPROC glad_glClientWaitSync; -#define glClientWaitSync glad_glClientWaitSync -typedef void (APIENTRYP PFNGLWAITSYNCPROC)(GLsync sync, GLbitfield flags, GLuint64 timeout); -GLAPI PFNGLWAITSYNCPROC glad_glWaitSync; -#define glWaitSync glad_glWaitSync -typedef void (APIENTRYP PFNGLGETINTEGER64VPROC)(GLenum pname, GLint64 *data); -GLAPI PFNGLGETINTEGER64VPROC glad_glGetInteger64v; -#define glGetInteger64v glad_glGetInteger64v -typedef void (APIENTRYP PFNGLGETSYNCIVPROC)(GLsync sync, GLenum pname, GLsizei count, GLsizei *length, GLint *values); -GLAPI PFNGLGETSYNCIVPROC glad_glGetSynciv; -#define glGetSynciv glad_glGetSynciv -typedef void (APIENTRYP PFNGLGETINTEGER64I_VPROC)(GLenum target, GLuint index, GLint64 *data); -GLAPI PFNGLGETINTEGER64I_VPROC glad_glGetInteger64i_v; -#define glGetInteger64i_v glad_glGetInteger64i_v -typedef void (APIENTRYP PFNGLGETBUFFERPARAMETERI64VPROC)(GLenum target, GLenum pname, GLint64 *params); -GLAPI PFNGLGETBUFFERPARAMETERI64VPROC glad_glGetBufferParameteri64v; -#define glGetBufferParameteri64v glad_glGetBufferParameteri64v -typedef void (APIENTRYP PFNGLFRAMEBUFFERTEXTUREPROC)(GLenum target, GLenum attachment, GLuint texture, GLint level); -GLAPI PFNGLFRAMEBUFFERTEXTUREPROC glad_glFramebufferTexture; -#define glFramebufferTexture glad_glFramebufferTexture -typedef void (APIENTRYP PFNGLTEXIMAGE2DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLboolean fixedsamplelocations); -GLAPI PFNGLTEXIMAGE2DMULTISAMPLEPROC glad_glTexImage2DMultisample; -#define glTexImage2DMultisample glad_glTexImage2DMultisample -typedef void (APIENTRYP PFNGLTEXIMAGE3DMULTISAMPLEPROC)(GLenum target, GLsizei samples, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLboolean fixedsamplelocations); -GLAPI PFNGLTEXIMAGE3DMULTISAMPLEPROC glad_glTexImage3DMultisample; -#define glTexImage3DMultisample glad_glTexImage3DMultisample -typedef void (APIENTRYP PFNGLGETMULTISAMPLEFVPROC)(GLenum pname, GLuint index, GLfloat *val); -GLAPI PFNGLGETMULTISAMPLEFVPROC glad_glGetMultisamplefv; -#define glGetMultisamplefv glad_glGetMultisamplefv -typedef void (APIENTRYP PFNGLSAMPLEMASKIPROC)(GLuint maskNumber, GLbitfield mask); -GLAPI PFNGLSAMPLEMASKIPROC glad_glSampleMaski; -#define glSampleMaski glad_glSampleMaski -#endif -#ifndef GL_VERSION_3_3 -#define GL_VERSION_3_3 1 -GLAPI int GLAD_GL_VERSION_3_3; -typedef void (APIENTRYP PFNGLBINDFRAGDATALOCATIONINDEXEDPROC)(GLuint program, GLuint colorNumber, GLuint index, const GLchar *name); -GLAPI PFNGLBINDFRAGDATALOCATIONINDEXEDPROC glad_glBindFragDataLocationIndexed; -#define glBindFragDataLocationIndexed glad_glBindFragDataLocationIndexed -typedef GLint (APIENTRYP PFNGLGETFRAGDATAINDEXPROC)(GLuint program, const GLchar *name); -GLAPI PFNGLGETFRAGDATAINDEXPROC glad_glGetFragDataIndex; -#define glGetFragDataIndex glad_glGetFragDataIndex -typedef void (APIENTRYP PFNGLGENSAMPLERSPROC)(GLsizei count, GLuint *samplers); -GLAPI PFNGLGENSAMPLERSPROC glad_glGenSamplers; -#define glGenSamplers glad_glGenSamplers -typedef void (APIENTRYP PFNGLDELETESAMPLERSPROC)(GLsizei count, const GLuint *samplers); -GLAPI PFNGLDELETESAMPLERSPROC glad_glDeleteSamplers; -#define glDeleteSamplers glad_glDeleteSamplers -typedef GLboolean (APIENTRYP PFNGLISSAMPLERPROC)(GLuint sampler); -GLAPI PFNGLISSAMPLERPROC glad_glIsSampler; -#define glIsSampler glad_glIsSampler -typedef void (APIENTRYP PFNGLBINDSAMPLERPROC)(GLuint unit, GLuint sampler); -GLAPI PFNGLBINDSAMPLERPROC glad_glBindSampler; -#define glBindSampler glad_glBindSampler -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIPROC)(GLuint sampler, GLenum pname, GLint param); -GLAPI PFNGLSAMPLERPARAMETERIPROC glad_glSamplerParameteri; -#define glSamplerParameteri glad_glSamplerParameteri -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, const GLint *param); -GLAPI PFNGLSAMPLERPARAMETERIVPROC glad_glSamplerParameteriv; -#define glSamplerParameteriv glad_glSamplerParameteriv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFPROC)(GLuint sampler, GLenum pname, GLfloat param); -GLAPI PFNGLSAMPLERPARAMETERFPROC glad_glSamplerParameterf; -#define glSamplerParameterf glad_glSamplerParameterf -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, const GLfloat *param); -GLAPI PFNGLSAMPLERPARAMETERFVPROC glad_glSamplerParameterfv; -#define glSamplerParameterfv glad_glSamplerParameterfv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, const GLint *param); -GLAPI PFNGLSAMPLERPARAMETERIIVPROC glad_glSamplerParameterIiv; -#define glSamplerParameterIiv glad_glSamplerParameterIiv -typedef void (APIENTRYP PFNGLSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, const GLuint *param); -GLAPI PFNGLSAMPLERPARAMETERIUIVPROC glad_glSamplerParameterIuiv; -#define glSamplerParameterIuiv glad_glSamplerParameterIuiv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIVPROC)(GLuint sampler, GLenum pname, GLint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIVPROC glad_glGetSamplerParameteriv; -#define glGetSamplerParameteriv glad_glGetSamplerParameteriv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIIVPROC)(GLuint sampler, GLenum pname, GLint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIIVPROC glad_glGetSamplerParameterIiv; -#define glGetSamplerParameterIiv glad_glGetSamplerParameterIiv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERFVPROC)(GLuint sampler, GLenum pname, GLfloat *params); -GLAPI PFNGLGETSAMPLERPARAMETERFVPROC glad_glGetSamplerParameterfv; -#define glGetSamplerParameterfv glad_glGetSamplerParameterfv -typedef void (APIENTRYP PFNGLGETSAMPLERPARAMETERIUIVPROC)(GLuint sampler, GLenum pname, GLuint *params); -GLAPI PFNGLGETSAMPLERPARAMETERIUIVPROC glad_glGetSamplerParameterIuiv; -#define glGetSamplerParameterIuiv glad_glGetSamplerParameterIuiv -typedef void (APIENTRYP PFNGLQUERYCOUNTERPROC)(GLuint id, GLenum target); -GLAPI PFNGLQUERYCOUNTERPROC glad_glQueryCounter; -#define glQueryCounter glad_glQueryCounter -typedef void (APIENTRYP PFNGLGETQUERYOBJECTI64VPROC)(GLuint id, GLenum pname, GLint64 *params); -GLAPI PFNGLGETQUERYOBJECTI64VPROC glad_glGetQueryObjecti64v; -#define glGetQueryObjecti64v glad_glGetQueryObjecti64v -typedef void (APIENTRYP PFNGLGETQUERYOBJECTUI64VPROC)(GLuint id, GLenum pname, GLuint64 *params); -GLAPI PFNGLGETQUERYOBJECTUI64VPROC glad_glGetQueryObjectui64v; -#define glGetQueryObjectui64v glad_glGetQueryObjectui64v -typedef void (APIENTRYP PFNGLVERTEXATTRIBDIVISORPROC)(GLuint index, GLuint divisor); -GLAPI PFNGLVERTEXATTRIBDIVISORPROC glad_glVertexAttribDivisor; -#define glVertexAttribDivisor glad_glVertexAttribDivisor -typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP1UIPROC glad_glVertexAttribP1ui; -#define glVertexAttribP1ui glad_glVertexAttribP1ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP1UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP1UIVPROC glad_glVertexAttribP1uiv; -#define glVertexAttribP1uiv glad_glVertexAttribP1uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP2UIPROC glad_glVertexAttribP2ui; -#define glVertexAttribP2ui glad_glVertexAttribP2ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP2UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP2UIVPROC glad_glVertexAttribP2uiv; -#define glVertexAttribP2uiv glad_glVertexAttribP2uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP3UIPROC glad_glVertexAttribP3ui; -#define glVertexAttribP3ui glad_glVertexAttribP3ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP3UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP3UIVPROC glad_glVertexAttribP3uiv; -#define glVertexAttribP3uiv glad_glVertexAttribP3uiv -typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIPROC)(GLuint index, GLenum type, GLboolean normalized, GLuint value); -GLAPI PFNGLVERTEXATTRIBP4UIPROC glad_glVertexAttribP4ui; -#define glVertexAttribP4ui glad_glVertexAttribP4ui -typedef void (APIENTRYP PFNGLVERTEXATTRIBP4UIVPROC)(GLuint index, GLenum type, GLboolean normalized, const GLuint *value); -GLAPI PFNGLVERTEXATTRIBP4UIVPROC glad_glVertexAttribP4uiv; -#define glVertexAttribP4uiv glad_glVertexAttribP4uiv -typedef void (APIENTRYP PFNGLVERTEXP2UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP2UIPROC glad_glVertexP2ui; -#define glVertexP2ui glad_glVertexP2ui -typedef void (APIENTRYP PFNGLVERTEXP2UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP2UIVPROC glad_glVertexP2uiv; -#define glVertexP2uiv glad_glVertexP2uiv -typedef void (APIENTRYP PFNGLVERTEXP3UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP3UIPROC glad_glVertexP3ui; -#define glVertexP3ui glad_glVertexP3ui -typedef void (APIENTRYP PFNGLVERTEXP3UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP3UIVPROC glad_glVertexP3uiv; -#define glVertexP3uiv glad_glVertexP3uiv -typedef void (APIENTRYP PFNGLVERTEXP4UIPROC)(GLenum type, GLuint value); -GLAPI PFNGLVERTEXP4UIPROC glad_glVertexP4ui; -#define glVertexP4ui glad_glVertexP4ui -typedef void (APIENTRYP PFNGLVERTEXP4UIVPROC)(GLenum type, const GLuint *value); -GLAPI PFNGLVERTEXP4UIVPROC glad_glVertexP4uiv; -#define glVertexP4uiv glad_glVertexP4uiv -typedef void (APIENTRYP PFNGLTEXCOORDP1UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP1UIPROC glad_glTexCoordP1ui; -#define glTexCoordP1ui glad_glTexCoordP1ui -typedef void (APIENTRYP PFNGLTEXCOORDP1UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP1UIVPROC glad_glTexCoordP1uiv; -#define glTexCoordP1uiv glad_glTexCoordP1uiv -typedef void (APIENTRYP PFNGLTEXCOORDP2UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP2UIPROC glad_glTexCoordP2ui; -#define glTexCoordP2ui glad_glTexCoordP2ui -typedef void (APIENTRYP PFNGLTEXCOORDP2UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP2UIVPROC glad_glTexCoordP2uiv; -#define glTexCoordP2uiv glad_glTexCoordP2uiv -typedef void (APIENTRYP PFNGLTEXCOORDP3UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP3UIPROC glad_glTexCoordP3ui; -#define glTexCoordP3ui glad_glTexCoordP3ui -typedef void (APIENTRYP PFNGLTEXCOORDP3UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP3UIVPROC glad_glTexCoordP3uiv; -#define glTexCoordP3uiv glad_glTexCoordP3uiv -typedef void (APIENTRYP PFNGLTEXCOORDP4UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLTEXCOORDP4UIPROC glad_glTexCoordP4ui; -#define glTexCoordP4ui glad_glTexCoordP4ui -typedef void (APIENTRYP PFNGLTEXCOORDP4UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLTEXCOORDP4UIVPROC glad_glTexCoordP4uiv; -#define glTexCoordP4uiv glad_glTexCoordP4uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP1UIPROC glad_glMultiTexCoordP1ui; -#define glMultiTexCoordP1ui glad_glMultiTexCoordP1ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP1UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP1UIVPROC glad_glMultiTexCoordP1uiv; -#define glMultiTexCoordP1uiv glad_glMultiTexCoordP1uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP2UIPROC glad_glMultiTexCoordP2ui; -#define glMultiTexCoordP2ui glad_glMultiTexCoordP2ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP2UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP2UIVPROC glad_glMultiTexCoordP2uiv; -#define glMultiTexCoordP2uiv glad_glMultiTexCoordP2uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP3UIPROC glad_glMultiTexCoordP3ui; -#define glMultiTexCoordP3ui glad_glMultiTexCoordP3ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP3UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP3UIVPROC glad_glMultiTexCoordP3uiv; -#define glMultiTexCoordP3uiv glad_glMultiTexCoordP3uiv -typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIPROC)(GLenum texture, GLenum type, GLuint coords); -GLAPI PFNGLMULTITEXCOORDP4UIPROC glad_glMultiTexCoordP4ui; -#define glMultiTexCoordP4ui glad_glMultiTexCoordP4ui -typedef void (APIENTRYP PFNGLMULTITEXCOORDP4UIVPROC)(GLenum texture, GLenum type, const GLuint *coords); -GLAPI PFNGLMULTITEXCOORDP4UIVPROC glad_glMultiTexCoordP4uiv; -#define glMultiTexCoordP4uiv glad_glMultiTexCoordP4uiv -typedef void (APIENTRYP PFNGLNORMALP3UIPROC)(GLenum type, GLuint coords); -GLAPI PFNGLNORMALP3UIPROC glad_glNormalP3ui; -#define glNormalP3ui glad_glNormalP3ui -typedef void (APIENTRYP PFNGLNORMALP3UIVPROC)(GLenum type, const GLuint *coords); -GLAPI PFNGLNORMALP3UIVPROC glad_glNormalP3uiv; -#define glNormalP3uiv glad_glNormalP3uiv -typedef void (APIENTRYP PFNGLCOLORP3UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLCOLORP3UIPROC glad_glColorP3ui; -#define glColorP3ui glad_glColorP3ui -typedef void (APIENTRYP PFNGLCOLORP3UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLCOLORP3UIVPROC glad_glColorP3uiv; -#define glColorP3uiv glad_glColorP3uiv -typedef void (APIENTRYP PFNGLCOLORP4UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLCOLORP4UIPROC glad_glColorP4ui; -#define glColorP4ui glad_glColorP4ui -typedef void (APIENTRYP PFNGLCOLORP4UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLCOLORP4UIVPROC glad_glColorP4uiv; -#define glColorP4uiv glad_glColorP4uiv -typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIPROC)(GLenum type, GLuint color); -GLAPI PFNGLSECONDARYCOLORP3UIPROC glad_glSecondaryColorP3ui; -#define glSecondaryColorP3ui glad_glSecondaryColorP3ui -typedef void (APIENTRYP PFNGLSECONDARYCOLORP3UIVPROC)(GLenum type, const GLuint *color); -GLAPI PFNGLSECONDARYCOLORP3UIVPROC glad_glSecondaryColorP3uiv; -#define glSecondaryColorP3uiv glad_glSecondaryColorP3uiv -#endif - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/jet00.blend b/jet00.blend deleted file mode 100644 index 52cf382..0000000 Binary files a/jet00.blend and /dev/null differ diff --git a/jet00.blend1 b/jet00.blend1 deleted file mode 100644 index 5c3864c..0000000 Binary files a/jet00.blend1 and /dev/null differ diff --git a/jet00.mtl b/jet00.mtl deleted file mode 100644 index a16011f..0000000 --- a/jet00.mtl +++ /dev/null @@ -1,10 +0,0 @@ -# Blender MTL File: 'jet00.blend' -# Material Count: 1 - -newmtl None -Ns 500 -Ka 0.8 0.8 0.8 -Kd 0.8 0.8 0.8 -Ks 0.8 0.8 0.8 -d 1 -illum 2 diff --git a/jet00.obj b/jet00.obj deleted file mode 100644 index a622bb8..0000000 --- a/jet00.obj +++ /dev/null @@ -1,16555 +0,0 @@ -# Blender v2.80 (sub 75) OBJ File: 'jet00.blend' -# www.blender.org -mtllib jet00.mtl -o Cylinder -v 0.043476 -0.040452 -0.868445 -v 0.035373 -0.039225 -0.868445 -v 0.027684 -0.036391 -0.868445 -v 0.020722 -0.032068 -0.868445 -v 0.014773 -0.026432 -0.868445 -v 0.085144 -0.008086 -0.868445 -v 0.082704 -0.015909 -0.868445 -v 0.078739 -0.023081 -0.868445 -v 0.073412 -0.029308 -0.868445 -v 0.066940 -0.034334 -0.868445 -v 0.059589 -0.037956 -0.868445 -v 0.051659 -0.040023 -0.868445 -v 0.010081 -0.019714 -0.868445 -v 0.043340 0.040445 -0.868445 -v 0.043304 0.051302 -0.288312 -v 0.035242 0.039191 -0.868445 -v 0.033296 0.050316 -0.279766 -v 0.027562 0.036332 -0.868445 -v 0.023672 0.047397 -0.270827 -v 0.020615 0.031985 -0.868445 -v 0.014803 0.042656 -0.261482 -v 0.014685 0.026329 -0.868445 -v 0.007029 0.036276 -0.251731 -v 0.085960 0.000068 -0.868445 -v 0.085117 0.008219 -0.868445 -v 0.093620 0.010009 -0.288312 -v 0.082651 0.016034 -0.868445 -v 0.090701 0.019633 -0.288312 -v 0.078662 0.023192 -0.868445 -v 0.085960 0.028502 -0.288312 -v 0.073313 0.029401 -0.868445 -v 0.079580 0.036276 -0.288312 -v 0.066825 0.034406 -0.868445 -v 0.071806 0.042656 -0.288312 -v 0.059461 0.038003 -0.868445 -v 0.062937 0.047397 -0.288312 -v 0.051525 0.040044 -0.868445 -v 0.053313 0.050316 -0.288312 -v 0.043304 0.052772 -0.220004 -v 0.033296 0.054235 -0.220004 -v 0.023672 0.054582 -0.220004 -v 0.014803 0.054739 -0.220004 -v 0.007029 0.055054 -0.220004 -v 0.093620 0.010009 -0.220004 -v 0.090701 0.019633 -0.220004 -v 0.085960 0.028502 -0.220004 -v 0.079580 0.036276 -0.220004 -v 0.071806 0.042656 -0.220004 -v 0.062937 0.047397 -0.220004 -v 0.053313 0.050316 -0.220004 -v 0.010015 0.019596 -0.868445 -v 0.071931 0.052772 0.175475 -v 0.055306 0.054235 0.175475 -v 0.039321 0.054582 0.175475 -v 0.024588 0.054739 0.175475 -v 0.011675 0.055054 0.175475 -v 0.155508 0.010009 0.175475 -v 0.150658 0.019633 0.175475 -v 0.142784 0.028502 0.175475 -v 0.132186 0.036276 0.175475 -v 0.119273 0.042656 0.175475 -v 0.104541 0.047397 0.175475 -v 0.088555 0.050316 0.175475 -v 0.046263 -0.047100 0.722040 -v 0.037847 -0.050675 0.722040 -v 0.028879 -0.053512 0.722040 -v 0.019490 -0.055568 0.722040 -v 0.009816 -0.056813 0.722040 -v 0.080846 -0.006898 0.722040 -v 0.079074 -0.013696 0.722040 -v 0.076148 -0.020294 0.722040 -v 0.072112 -0.026596 0.722040 -v 0.067024 -0.032511 0.722040 -v 0.060959 -0.037951 0.722040 -v 0.054005 -0.042838 0.722040 -v 0.046263 0.047100 0.722040 -v 0.037847 0.050675 0.722040 -v 0.080432 -0.000000 0.733836 -v 0.080846 0.006898 0.722040 -v 0.079074 0.013696 0.722040 -v 0.076148 0.020294 0.722040 -v 0.072112 0.026596 0.722040 -v 0.067024 0.032511 0.722040 -v 0.060959 0.037951 0.722040 -v 0.054005 0.042838 0.722040 -v 0.032510 -0.047100 1.005188 -v 0.026596 -0.050675 1.005188 -v 0.020294 -0.053512 1.005188 -v 0.013696 -0.055568 1.005188 -v 0.006898 -0.056813 1.005188 -v 0.056813 -0.006898 1.005188 -v 0.055567 -0.013696 1.005188 -v 0.053511 -0.020294 1.005188 -v 0.050675 -0.026596 1.005188 -v 0.047100 -0.032511 1.005188 -v 0.042837 -0.037951 1.005188 -v 0.037951 -0.042838 1.005188 -v 0.032510 0.047100 1.005188 -v 0.026596 0.050675 1.005188 -v 0.020294 0.053511 1.005188 -v 0.013696 0.055567 1.005188 -v 0.006898 0.056813 1.005188 -v 0.057230 -0.000000 1.005188 -v 0.056813 0.006898 1.005188 -v 0.055567 0.013696 1.005188 -v 0.053511 0.020294 1.005188 -v 0.050675 0.026596 1.005188 -v 0.047100 0.032511 1.005188 -v 0.042837 0.037951 1.005188 -v 0.037951 0.042838 1.005188 -v 0.036905 -0.033267 -0.944019 -v 0.043777 -0.034308 -0.944019 -v 0.021037 0.040082 1.125801 -v 0.023670 0.045099 1.072876 -v 0.013596 0.025906 1.219880 -v 0.017981 0.034259 1.167664 -v 0.021979 0.031842 1.167664 -v 0.016620 0.024078 1.219880 -v 0.028933 0.041918 1.072876 -v 0.025715 0.037254 1.125801 -v 0.016052 -0.042326 1.125801 -v 0.018061 -0.047624 1.072876 -v 0.010374 -0.027356 1.219880 -v 0.013720 -0.036177 1.167664 -v 0.009259 -0.037567 1.167664 -v 0.007001 -0.028407 1.219880 -v 0.012189 -0.049454 1.072876 -v 0.010833 -0.043952 1.125801 -v 0.016052 0.042326 1.125801 -v 0.018061 0.047624 1.072876 -v 0.010374 0.027356 1.219880 -v 0.013720 0.036177 1.167664 -v 0.021037 -0.040082 1.125801 -v 0.023670 -0.045100 1.072876 -v 0.013596 -0.025906 1.219880 -v 0.017981 -0.034260 1.167664 -v 0.010833 0.043952 1.125801 -v 0.012189 0.049454 1.072876 -v 0.007001 0.028407 1.219880 -v 0.009259 0.037567 1.167664 -v 0.025714 -0.037254 1.125801 -v 0.028933 -0.041918 1.072876 -v 0.016620 -0.024078 1.219880 -v 0.021979 -0.031842 1.167664 -v 0.005456 0.044937 1.125801 -v 0.006139 0.050562 1.072876 -v 0.003526 0.029044 1.219880 -v 0.004664 0.038409 1.167664 -v 0.004663 -0.038409 1.167664 -v 0.003526 -0.029044 1.219880 -v 0.006139 -0.050562 1.072876 -v 0.005456 -0.044937 1.125801 -v 0.044937 0.005456 1.125801 -v 0.050562 0.006139 1.072876 -v 0.029043 0.003526 1.219880 -v 0.038409 0.004664 1.167664 -v 0.038691 -0.000000 1.167664 -v 0.029257 -0.000000 1.219880 -v 0.050933 -0.000000 1.072876 -v 0.045267 -0.000000 1.125801 -v 0.038409 -0.004664 1.167664 -v 0.029043 -0.003527 1.219880 -v 0.050562 -0.006139 1.072876 -v 0.044937 -0.005456 1.125801 -v 0.043952 0.010833 1.125801 -v 0.049453 0.012189 1.072876 -v 0.028407 0.007002 1.219880 -v 0.037567 0.009259 1.167664 -v 0.037567 -0.009260 1.167664 -v 0.028407 -0.007002 1.219880 -v 0.049453 -0.012189 1.072876 -v 0.043952 -0.010833 1.125801 -v 0.042325 0.016052 1.125801 -v 0.047624 0.018061 1.072876 -v 0.027355 0.010375 1.219880 -v 0.036177 0.013720 1.167664 -v 0.036177 -0.013720 1.167664 -v 0.027355 -0.010375 1.219880 -v 0.047624 -0.018061 1.072876 -v 0.042325 -0.016052 1.125801 -v 0.040082 0.021037 1.125801 -v 0.045099 0.023670 1.072876 -v 0.025906 0.013596 1.219880 -v 0.034259 0.017981 1.167664 -v 0.034259 -0.017981 1.167664 -v 0.025906 -0.013596 1.219880 -v 0.045099 -0.023670 1.072876 -v 0.040082 -0.021037 1.125801 -v 0.037254 0.025715 1.125801 -v 0.041917 0.028934 1.072876 -v 0.024078 0.016620 1.219880 -v 0.031842 0.021979 1.167664 -v 0.031842 -0.021979 1.167664 -v 0.024078 -0.016620 1.219880 -v 0.041917 -0.028934 1.072876 -v 0.037254 -0.025715 1.125801 -v 0.033883 0.030018 1.125801 -v 0.038124 0.033775 1.072876 -v 0.021899 0.019401 1.219880 -v 0.028961 0.025657 1.167664 -v 0.028961 -0.025657 1.167664 -v 0.021899 -0.019401 1.219880 -v 0.038124 -0.033775 1.072876 -v 0.033883 -0.030018 1.125801 -v 0.030018 0.033883 1.125801 -v 0.033775 0.038124 1.072876 -v 0.019401 0.021899 1.219880 -v 0.025657 0.028961 1.167664 -v 0.025657 -0.028961 1.167664 -v 0.019401 -0.021899 1.219880 -v 0.033775 -0.038125 1.072876 -v 0.030018 -0.033883 1.125801 -v 0.059814 0.052455 0.448757 -v 0.076274 0.049936 0.448757 -v 0.043537 0.054046 0.448757 -v 0.027959 0.055153 0.448757 -v 0.013564 0.055934 0.448757 -v 0.027959 -0.055153 0.448757 -v 0.013564 -0.055934 0.448757 -v 0.076274 -0.049936 0.448757 -v 0.059814 -0.052455 0.448757 -v 0.155059 0.008454 0.448757 -v 0.155059 -0.008454 0.448757 -v 0.150607 0.016664 0.448757 -v 0.150607 -0.016665 0.448757 -v 0.143355 0.024398 0.448757 -v 0.143355 -0.024398 0.448757 -v 0.133544 0.031436 0.448757 -v 0.133544 -0.031436 0.448757 -v 0.121503 0.037583 0.448757 -v 0.121503 -0.037583 0.448757 -v 0.107631 0.042674 0.448757 -v 0.107631 -0.042674 0.448757 -v 0.092388 0.046577 0.448757 -v 0.092388 -0.046577 0.448757 -v 0.043537 -0.054047 0.448757 -v 0.052144 0.051639 0.574125 -v 0.058076 0.052086 0.505357 -v 0.037556 0.051047 0.664887 -v 0.048922 0.051491 0.596783 -v 0.038456 0.053801 0.574132 -v 0.042499 0.053936 0.505355 -v 0.036203 0.053757 0.596769 -v 0.025052 0.055343 0.574134 -v 0.027453 0.055239 0.505355 -v 0.023670 0.055378 0.596765 -v 0.012290 0.056337 0.574134 -v 0.013380 0.056116 0.505355 -v 0.011644 0.056410 0.596765 -v 0.025052 -0.055343 0.574134 -v 0.027453 -0.055239 0.505355 -v 0.018642 -0.055481 0.664915 -v 0.023670 -0.055378 0.596765 -v 0.065743 -0.048635 0.574109 -v 0.073718 -0.049348 0.505360 -v 0.046692 -0.047693 0.664841 -v 0.061490 -0.048399 0.596813 -v 0.128933 0.007744 0.573487 -v 0.147604 0.008131 0.505438 -v 0.087599 0.007231 0.663561 -v 0.118744 0.007606 0.597714 -v 0.125393 0.015308 0.573596 -v 0.143462 0.016049 0.505428 -v 0.085328 0.014329 0.663731 -v 0.115632 0.015048 0.597590 -v 0.119635 0.022521 0.573728 -v 0.136705 0.023547 0.505415 -v 0.081638 0.021166 0.663966 -v 0.110523 0.022166 0.597421 -v 0.111845 0.029221 0.573852 -v 0.127551 0.030433 0.505401 -v 0.076648 0.027620 0.664217 -v 0.103548 0.028807 0.597244 -v 0.102260 0.035259 0.573954 -v 0.116292 0.036532 0.505388 -v 0.070499 0.033580 0.664445 -v 0.094893 0.034830 0.597085 -v 0.091162 0.040509 0.574029 -v 0.103287 0.041695 0.505376 -v 0.063345 0.038943 0.664627 -v 0.084803 0.040113 0.596958 -v 0.078872 0.044862 0.574079 -v 0.088945 0.045802 0.505366 -v 0.055350 0.043621 0.664759 -v 0.073562 0.044550 0.596868 -v 0.038455 -0.053801 0.574132 -v 0.042499 -0.053936 0.505355 -v 0.028139 -0.053623 0.664908 -v 0.036203 -0.053757 0.596769 -v 0.061490 0.048399 0.596813 -v 0.046692 0.047693 0.664841 -v 0.073718 0.049348 0.505360 -v 0.065743 0.048635 0.574109 -v 0.011644 -0.056410 0.596765 -v 0.009263 -0.056629 0.664916 -v 0.013380 -0.056116 0.505355 -v 0.012290 -0.056337 0.574134 -v 0.048922 -0.051491 0.596783 -v 0.037556 -0.051047 0.664887 -v 0.058076 -0.052087 0.505357 -v 0.052144 -0.051639 0.574125 -v 0.118744 -0.007606 0.597714 -v 0.087599 -0.007231 0.663561 -v 0.147604 -0.008131 0.505438 -v 0.128933 -0.007744 0.573487 -v 0.115632 -0.015048 0.597590 -v 0.085328 -0.014330 0.663731 -v 0.143462 -0.016049 0.505428 -v 0.125393 -0.015309 0.573596 -v 0.110523 -0.022166 0.597421 -v 0.081638 -0.021166 0.663966 -v 0.136705 -0.023547 0.505415 -v 0.119635 -0.022521 0.573728 -v 0.103548 -0.028807 0.597244 -v 0.076648 -0.027620 0.664217 -v 0.127551 -0.030433 0.505401 -v 0.111845 -0.029221 0.573852 -v 0.094893 -0.034830 0.597085 -v 0.070499 -0.033580 0.664444 -v 0.116292 -0.036532 0.505388 -v 0.102260 -0.035260 0.573954 -v 0.084803 -0.040113 0.596958 -v 0.063345 -0.038943 0.664627 -v 0.103287 -0.041695 0.505376 -v 0.091162 -0.040509 0.574029 -v 0.073562 -0.044550 0.596868 -v 0.055350 -0.043621 0.664759 -v 0.088945 -0.045802 0.505366 -v 0.078872 -0.044862 0.574079 -v 0.128627 0.010009 -0.039364 -v 0.110653 0.010009 -0.136675 -v 0.147252 0.010009 0.092854 -v 0.134272 0.010009 -0.005182 -v 0.124621 0.019633 -0.039329 -v 0.107192 0.019633 -0.136728 -v 0.142661 0.019633 0.092866 -v 0.130079 0.019633 -0.005215 -v 0.118114 0.028502 -0.039287 -v 0.101577 0.028502 -0.136792 -v 0.135206 0.028502 0.092880 -v 0.123275 0.028502 -0.005253 -v 0.109353 0.036276 -0.039249 -v 0.094028 0.036276 -0.136849 -v 0.125172 0.036276 0.092892 -v 0.114121 0.036276 -0.005284 -v 0.098673 0.042656 -0.039223 -v 0.084836 0.042656 -0.136888 -v 0.112945 0.042656 0.092899 -v 0.102970 0.042656 -0.005304 -v 0.086487 0.047397 -0.039210 -v 0.074355 0.047397 -0.136908 -v 0.098994 0.047397 0.092903 -v 0.090250 0.047397 -0.005314 -v 0.073262 0.050316 -0.039206 -v 0.062984 0.050316 -0.136915 -v 0.083857 0.050316 0.092904 -v 0.076449 0.050316 -0.005317 -v 0.059509 0.052772 -0.039203 -v 0.051160 0.052772 -0.136919 -v 0.068114 0.052772 0.092905 -v 0.062097 0.052772 -0.005319 -v 0.045755 0.054235 -0.039202 -v 0.039336 0.054235 -0.136920 -v 0.052372 0.054235 0.092905 -v 0.047745 0.054235 -0.005320 -v 0.032530 0.054582 -0.039202 -v 0.027966 0.054582 -0.136920 -v 0.037234 0.054582 0.092905 -v 0.033945 0.054582 -0.005320 -v 0.020342 0.054739 -0.039202 -v 0.017488 0.054739 -0.136920 -v 0.023284 0.054739 0.092905 -v 0.021227 0.054739 -0.005320 -v 0.009659 0.055054 -0.039202 -v 0.008304 0.055054 -0.136920 -v 0.011056 0.055054 0.092905 -v 0.010079 0.055054 -0.005320 -v 0.006837 -0.012189 -0.868445 -v 0.005173 -0.004165 -0.868445 -v 0.005160 0.004030 -0.868445 -v 0.006796 0.012060 -0.868445 -v 0.043304 -0.051302 -0.868445 -v 0.033296 -0.050316 -0.868445 -v 0.023672 -0.047397 -0.868445 -v 0.014803 -0.042656 -0.868445 -v 0.007029 -0.036276 -0.868445 -v 0.094606 0.000000 -0.868445 -v 0.093620 -0.010009 -0.868445 -v 0.090701 -0.019633 -0.868445 -v 0.085960 -0.028502 -0.868445 -v 0.079580 -0.036276 -0.868445 -v 0.071806 -0.042656 -0.868445 -v 0.062936 -0.047397 -0.868445 -v 0.053313 -0.050316 -0.868445 -v 0.043304 0.051302 -0.868445 -v 0.033296 0.050316 -0.868445 -v 0.023672 0.047397 -0.868445 -v 0.014803 0.042656 -0.868445 -v 0.007029 0.036276 -0.868445 -v 0.093620 0.010009 -0.868445 -v 0.090701 0.019633 -0.868445 -v 0.085960 0.028502 -0.868445 -v 0.079580 0.036276 -0.868445 -v 0.071806 0.042656 -0.868445 -v 0.062936 0.047397 -0.868445 -v 0.053313 0.050316 -0.868445 -v 0.543298 0.000000 -0.285885 -v 0.529952 -0.010009 -0.288312 -v 0.490305 -0.010009 -0.219575 -v 0.503650 0.000000 -0.217148 -v 0.529952 0.010009 -0.288312 -v 0.490305 0.010009 -0.219575 -v 0.200386 -0.010009 0.175475 -v 0.210452 -0.000000 0.179199 -v 0.200386 0.010009 0.175475 -v 0.200386 -0.006898 0.618893 -v 0.208518 -0.000000 0.625689 -v 0.200386 0.006898 0.618893 -v 0.430416 -0.008454 0.357379 -v 0.200386 -0.008454 0.442670 -v 0.200386 0.008454 0.442670 -v 0.200386 -0.008131 0.499350 -v 0.200386 -0.007744 0.566389 -v 0.200386 -0.007606 0.590616 -v 0.200386 -0.007231 0.603888 -v 0.200386 0.007744 0.566389 -v 0.200386 0.008131 0.499350 -v 0.200386 0.007231 0.603888 -v 0.200386 0.007606 0.590616 -v 0.438548 -0.000000 0.364175 -v 0.258694 0.006898 0.548062 -v 0.266827 -0.000000 0.554858 -v 0.258694 -0.006898 0.548062 -v 0.430696 -0.010009 -0.135699 -v 0.362796 -0.010009 -0.040157 -v 0.338213 -0.010009 -0.005566 -v 0.268372 -0.010009 0.092706 -v 0.444032 0.000000 -0.133259 -v 0.376148 0.000000 -0.037740 -v 0.351552 0.000000 -0.003131 -v 0.281720 0.000000 0.095129 -v 0.362796 0.010009 -0.040157 -v 0.430696 0.010009 -0.135699 -v 0.268372 0.010009 0.092706 -v 0.338213 0.010009 -0.005566 -v 0.074102 0.051354 0.312116 -v 0.057560 0.053345 0.312116 -v 0.041429 0.054314 0.312116 -v 0.026274 0.054946 0.312116 -v 0.012620 0.055494 0.312116 -v 0.155283 0.009231 0.312116 -v 0.150633 0.018149 0.312116 -v 0.143069 0.026450 0.312116 -v 0.132865 0.033856 0.312116 -v 0.120388 0.040120 0.312116 -v 0.106086 0.045035 0.312116 -v 0.090471 0.048447 0.312116 -v 0.211438 -0.000000 0.285574 -v 0.200386 -0.009231 0.309072 -v 0.200386 0.009231 0.309072 -v 0.043304 -0.051302 -0.679246 -v 0.033296 -0.050316 -0.679246 -v 0.023672 -0.047397 -0.679246 -v 0.014803 -0.042656 -0.679246 -v 0.007029 -0.036276 -0.679246 -v 0.093620 -0.010009 -0.679246 -v 0.090701 -0.019633 -0.679246 -v 0.085960 -0.028502 -0.679246 -v 0.079580 -0.036276 -0.679246 -v 0.071806 -0.042656 -0.679246 -v 0.062936 -0.047397 -0.679246 -v 0.053313 -0.050316 -0.679246 -v 0.043304 0.051302 -0.681877 -v 0.033296 0.050316 -0.678489 -v 0.023672 0.047397 -0.674944 -v 0.014803 0.042656 -0.671239 -v 0.007029 0.036276 -0.667372 -v 0.093620 0.010009 -0.681877 -v 0.090701 0.019633 -0.681877 -v 0.085960 0.028502 -0.681877 -v 0.079580 0.036276 -0.681877 -v 0.071806 0.042656 -0.681877 -v 0.062936 0.047397 -0.681877 -v 0.053313 0.050316 -0.681877 -v 0.011280 0.003418 -0.944019 -v 0.011292 -0.003532 -0.944019 -v 0.012702 -0.010338 -0.944019 -v 0.012668 0.010228 -0.944019 -v 0.692452 0.000000 -0.503136 -v 0.684723 -0.010009 -0.506792 -v 0.684723 0.010009 -0.506792 -v 0.214958 0.010009 -0.005182 -v 0.134640 -0.000000 0.688572 -v 0.172945 0.008454 0.446355 -v 0.221468 0.010009 -0.039364 -v 0.249910 0.010009 -0.220004 -v 0.236397 0.010009 -0.136675 -v 0.186983 -0.010009 -0.288312 -v 0.265793 0.010009 -0.288312 -v 0.128016 -0.006898 0.681339 -v 0.168431 0.008131 0.503036 -v 0.186983 -0.010009 -0.220004 -v 0.094604 0.000000 -0.844651 -v 0.328097 0.000000 -0.844651 -v 0.186983 -0.010009 -0.005182 -v 0.132104 0.007231 0.640015 -v 0.128016 0.006898 0.681339 -v 0.186983 -0.010009 0.092854 -v 0.186983 -0.010009 -0.039364 -v 0.186983 -0.010009 -0.136675 -v 0.132104 -0.007231 0.640015 -v 0.150959 -0.007606 0.594913 -v 0.197999 0.010009 0.092854 -v 0.173216 0.010009 0.175475 -v 0.186983 -0.008454 0.446355 -v 0.186983 -0.010009 0.175475 -v 0.157128 0.007744 0.570686 -v 0.150959 0.007606 0.594913 -v 0.157128 -0.007744 0.570686 -v 0.168431 -0.008131 0.503036 -v 0.186983 -0.009231 0.310915 -v 0.173080 0.009231 0.310915 -v 0.325610 0.010009 -0.681659 -v 0.186983 -0.010009 -0.679246 -v 0.033296 -0.050316 -0.837338 -v 0.023672 -0.047397 -0.837338 -v 0.014803 -0.042656 -0.837338 -v 0.007029 -0.036276 -0.837338 -v 0.093620 -0.010009 -0.837338 -v 0.090701 -0.019633 -0.837338 -v 0.085960 -0.028502 -0.837338 -v 0.079580 -0.036276 -0.837338 -v 0.071806 -0.042656 -0.837338 -v 0.062936 -0.047397 -0.837338 -v 0.053313 -0.050316 -0.837338 -v 0.050603 0.033962 -0.944019 -v 0.057335 0.032231 -0.944019 -v 0.063580 0.029181 -0.944019 -v 0.069083 0.024936 -0.944019 -v 0.073619 0.019670 -0.944019 -v 0.077002 0.013599 -0.944019 -v 0.079094 0.006971 -0.944019 -v 0.015398 0.016619 -0.944019 -v 0.019359 0.022331 -0.944019 -v 0.024388 0.027127 -0.944019 -v 0.030280 0.030814 -0.944019 -v 0.036794 0.033238 -0.944019 -v 0.033296 0.050316 -0.837338 -v 0.023672 0.047397 -0.837338 -v 0.014803 0.042656 -0.837338 -v 0.007029 0.036276 -0.837338 -v 0.093620 0.010009 -0.837338 -v 0.090701 0.019633 -0.837338 -v 0.085960 0.028502 -0.837338 -v 0.079580 0.036276 -0.837338 -v 0.071806 0.042656 -0.837338 -v 0.062936 0.047397 -0.837338 -v 0.053313 0.050316 -0.837338 -v 0.043662 0.034302 -0.944019 -v 0.050717 -0.033944 -0.944019 -v 0.057443 -0.032191 -0.944019 -v 0.063677 -0.029120 -0.944019 -v 0.069166 -0.024856 -0.944019 -v 0.073685 -0.019575 -0.944019 -v 0.077047 -0.013493 -0.944019 -v 0.079117 -0.006858 -0.944019 -v 0.079808 0.000058 -0.944019 -v 0.015454 -0.016720 -0.944019 -v 0.019434 -0.022418 -0.944019 -v 0.692452 0.000000 -0.661249 -v 0.684723 -0.010009 -0.657105 -v 0.684723 0.010009 -0.657105 -v 0.043304 -0.051302 -0.837338 -v 0.024479 -0.027198 -0.944019 -v 0.043304 0.051302 -0.837338 -v 0.030384 -0.030864 -0.944019 -v 0.328097 0.010009 -0.837338 -v 0.328097 -0.010009 -0.837338 -v 0.254254 -0.006898 0.554834 -v 0.262386 -0.000000 0.561630 -v 0.254254 0.006898 0.554834 -v 0.254254 -0.008454 0.357379 -v 0.254254 0.008454 0.357379 -v 0.254254 -0.008131 0.435291 -v 0.254254 -0.007744 0.502330 -v 0.254254 -0.007606 0.526557 -v 0.254254 -0.007231 0.539829 -v 0.254254 0.007744 0.502330 -v 0.254254 0.008131 0.435291 -v 0.254254 0.007231 0.539829 -v 0.254254 0.007606 0.526557 -v 0.246805 -0.000000 0.252800 -v 0.254254 -0.009231 0.259572 -v 0.254254 0.009231 0.259572 -v 0.430416 0.008454 0.357379 -v 0.355600 -0.008131 0.435291 -v 0.297971 -0.007744 0.502330 -v 0.276640 -0.007606 0.526557 -v 0.265805 -0.007231 0.539829 -v 0.297971 0.007744 0.502330 -v 0.355600 0.008131 0.435291 -v 0.265805 0.007231 0.539829 -v 0.276640 0.007606 0.526557 -v 0.363732 -0.000000 0.442091 -v 0.306103 -0.000000 0.509082 -v 0.284772 -0.000000 0.533399 -v 0.273937 -0.000000 0.546563 -v 0.439558 -0.000000 0.252800 -v 0.430416 -0.009231 0.259572 -v 0.430416 0.009231 0.259572 -v 0.043476 -0.040452 -0.944019 -v 0.035373 -0.039225 -0.944019 -v 0.005173 -0.004165 -0.944019 -v 0.005160 0.004030 -0.944019 -v 0.006796 0.012060 -0.944019 -v 0.006836 -0.012189 -0.944019 -v 0.010081 -0.019714 -0.944019 -v 0.010015 0.019596 -0.944019 -v 0.051525 0.040044 -0.944019 -v 0.043340 0.040445 -0.944019 -v 0.059461 0.038003 -0.944019 -v 0.066825 0.034406 -0.944019 -v 0.073313 0.029401 -0.944019 -v 0.078661 0.023192 -0.944019 -v 0.085117 0.008219 -0.944019 -v 0.082650 0.016034 -0.944019 -v 0.085959 0.000068 -0.944019 -v 0.014685 0.026329 -0.944019 -v 0.020615 0.031985 -0.944019 -v 0.027562 0.036332 -0.944019 -v 0.035242 0.039191 -0.944019 -v 0.051659 -0.040023 -0.944019 -v 0.059589 -0.037956 -0.944019 -v 0.066940 -0.034334 -0.944019 -v 0.073412 -0.029308 -0.944019 -v 0.078739 -0.023081 -0.944019 -v 0.082704 -0.015909 -0.944019 -v 0.085144 -0.008086 -0.944019 -v 0.014773 -0.026432 -0.944019 -v 0.020722 -0.032068 -0.944019 -v 0.027684 -0.036391 -0.944019 -v 0.043777 -0.034308 -0.847886 -v 0.036905 -0.033267 -0.847886 -v 0.011292 -0.003532 -0.847886 -v 0.011280 0.003418 -0.847886 -v 0.012668 0.010228 -0.847886 -v 0.012703 -0.010338 -0.847886 -v 0.015454 -0.016720 -0.847886 -v 0.015398 0.016619 -0.847886 -v 0.050604 0.033962 -0.847886 -v 0.043662 0.034302 -0.847886 -v 0.057335 0.032231 -0.847886 -v 0.063580 0.029181 -0.847886 -v 0.069083 0.024936 -0.847886 -v 0.073619 0.019670 -0.847886 -v 0.079094 0.006971 -0.847886 -v 0.077002 0.013599 -0.847886 -v 0.079809 0.000058 -0.847886 -v 0.019359 0.022330 -0.847886 -v 0.024388 0.027127 -0.847886 -v 0.030280 0.030814 -0.847886 -v 0.036794 0.033238 -0.847886 -v 0.050718 -0.033944 -0.847886 -v 0.057443 -0.032191 -0.847886 -v 0.063678 -0.029120 -0.847886 -v 0.069167 -0.024856 -0.847886 -v 0.073685 -0.019575 -0.847886 -v 0.077048 -0.013493 -0.847886 -v 0.079117 -0.006858 -0.847886 -v 0.019434 -0.022418 -0.847886 -v 0.024479 -0.027198 -0.847886 -v 0.030384 -0.030864 -0.847886 -v 0.035884 -0.037239 -0.947311 -v 0.036394 -0.035253 -0.947311 -v 0.043676 -0.036356 -0.947311 -v 0.043576 -0.038404 -0.947311 -v 0.007200 0.003826 -0.947311 -v 0.009240 0.003622 -0.947311 -v 0.009252 -0.003743 -0.947311 -v 0.007213 -0.003954 -0.947311 -v 0.008753 0.011449 -0.947311 -v 0.010710 0.010839 -0.947311 -v 0.010747 -0.010955 -0.947311 -v 0.008792 -0.011572 -0.947311 -v 0.013663 -0.017718 -0.947311 -v 0.011872 -0.018716 -0.947311 -v 0.011809 0.018604 -0.947311 -v 0.013603 0.017612 -0.947311 -v 0.051218 0.038016 -0.947311 -v 0.050911 0.035989 -0.947311 -v 0.043554 0.036350 -0.947311 -v 0.043447 0.038397 -0.947311 -v 0.058752 0.036079 -0.947311 -v 0.058044 0.034155 -0.947311 -v 0.065743 0.032665 -0.947311 -v 0.064661 0.030923 -0.947311 -v 0.071903 0.027913 -0.947311 -v 0.070493 0.026424 -0.947311 -v 0.076981 0.022018 -0.947311 -v 0.075300 0.020844 -0.947311 -v 0.083109 0.007803 -0.947311 -v 0.081101 0.007387 -0.947311 -v 0.078885 0.014411 -0.947311 -v 0.080768 0.015222 -0.947311 -v 0.083909 0.000065 -0.947311 -v 0.081859 0.000061 -0.947311 -v 0.016243 0.024996 -0.947311 -v 0.017801 0.023663 -0.947311 -v 0.021873 0.030366 -0.947311 -v 0.023130 0.028747 -0.947311 -v 0.028468 0.034492 -0.947311 -v 0.029374 0.032653 -0.947311 -v 0.035759 0.037206 -0.947311 -v 0.036276 0.035222 -0.947311 -v 0.051031 -0.035971 -0.947311 -v 0.051345 -0.037997 -0.947311 -v 0.058158 -0.034113 -0.947311 -v 0.058873 -0.036034 -0.947311 -v 0.064765 -0.030858 -0.947311 -v 0.065852 -0.032596 -0.947311 -v 0.070581 -0.026340 -0.947311 -v 0.071997 -0.027824 -0.947311 -v 0.075369 -0.020744 -0.947311 -v 0.077054 -0.021912 -0.947311 -v 0.078933 -0.014298 -0.947311 -v 0.080818 -0.015104 -0.947311 -v 0.081126 -0.007267 -0.947311 -v 0.083135 -0.007677 -0.947311 -v 0.017880 -0.023756 -0.947311 -v 0.016327 -0.025094 -0.947311 -v 0.023227 -0.028821 -0.947311 -v 0.021975 -0.030445 -0.947311 -v 0.029484 -0.032707 -0.947311 -v 0.028584 -0.034549 -0.947311 -v 0.144303 0.010009 -0.220004 -v 0.096143 -0.006898 0.708841 -v 0.154358 0.008131 0.504659 -v 0.102031 0.007231 0.655925 -v 0.102031 -0.007231 0.655925 -v 0.163709 0.010009 0.092854 -v 0.160859 -0.008454 0.447978 -v 0.138076 0.007744 0.572579 -v 0.138076 -0.007744 0.572579 -v 0.160437 0.010009 -0.005182 -v 0.102925 -0.000000 0.716074 -v 0.160859 0.008454 0.447978 -v 0.158734 0.010009 -0.039364 -v 0.151430 0.010009 -0.136675 -v 0.121740 0.010009 -0.288312 -v 0.096143 0.006898 0.708841 -v 0.129191 -0.007606 0.596806 -v 0.161250 0.010009 0.175475 -v 0.129191 0.007606 0.596806 -v 0.154358 -0.008131 0.504659 -v 0.161055 0.009231 0.311726 -v 0.121740 0.010009 -0.681659 -v 0.152836 -0.010009 -0.679246 -v 0.121820 0.000000 -0.844651 -v 0.121820 -0.010009 -0.837338 -v 0.121740 0.010009 -0.837338 -v 0.093620 0.018582 -0.288312 -v 0.282199 0.245637 -0.681877 -v 0.282199 0.245637 -0.837338 -v 0.121740 0.018582 -0.288312 -v 0.305861 0.230444 -0.681659 -v 0.305861 0.230444 -0.837338 -v 0.127408 0.010009 -0.220004 -v 0.110514 0.010009 -0.220004 -v 0.091044 -0.006898 0.713241 -v 0.085945 -0.006898 0.717640 -v 0.152107 0.008131 0.504919 -v 0.149855 0.008131 0.505178 -v 0.097221 0.007231 0.658470 -v 0.092410 0.007231 0.661015 -v 0.097221 -0.007231 0.658470 -v 0.092410 -0.007231 0.661015 -v 0.158223 0.010009 0.092854 -v 0.152738 0.010009 0.092854 -v 0.158925 -0.008454 0.448238 -v 0.156992 -0.008454 0.448498 -v 0.135028 0.007744 0.572882 -v 0.131980 0.007744 0.573184 -v 0.135028 -0.007744 0.572882 -v 0.131980 -0.007744 0.573184 -v 0.142993 0.010009 -0.005182 -v 0.151715 0.010009 -0.005182 -v 0.092778 -0.000000 0.724873 -v 0.097851 -0.000000 0.720473 -v 0.156992 0.008454 0.448498 -v 0.158925 0.008454 0.448238 -v 0.138662 0.010009 -0.039364 -v 0.148698 0.010009 -0.039364 -v 0.124245 0.010009 -0.136675 -v 0.137837 0.010009 -0.136675 -v 0.102993 0.010009 -0.288312 -v 0.112367 0.010009 -0.288312 -v 0.085945 0.006898 0.717640 -v 0.091044 0.006898 0.713241 -v 0.122226 -0.007606 0.597412 -v 0.125709 -0.007606 0.597109 -v 0.157422 0.010009 0.175475 -v 0.159336 0.010009 0.175475 -v 0.122226 0.007606 0.597412 -v 0.125709 0.007606 0.597109 -v 0.149855 -0.008131 0.505178 -v 0.152107 -0.008131 0.504919 -v 0.157207 0.009231 0.311986 -v 0.159131 0.009231 0.311856 -v 0.102682 -0.010009 -0.679246 -v 0.127759 -0.010009 -0.679246 -v 0.103076 0.000000 -0.844651 -v 0.112448 0.000000 -0.844651 -v 0.103076 -0.010009 -0.837338 -v 0.112448 -0.010009 -0.837338 -v 0.102993 0.010009 -0.837338 -v 0.112367 0.010009 -0.846601 -v 0.102978 0.025266 -0.284397 -v 0.112351 0.025266 -0.284397 -v 0.293685 0.246205 -0.677890 -v 0.301572 0.241141 -0.677817 -v 0.293562 0.245986 -0.846818 -v 0.301450 0.240922 -0.846818 -v 0.112367 0.010009 -0.837338 -v 0.102993 0.010009 -0.846601 -v 0.094113 0.005005 -0.868445 -v 0.080138 0.003449 0.733836 -v 0.057022 0.003449 1.005188 -v 0.045102 0.002728 1.125801 -v 0.050748 0.003070 1.072876 -v 0.029150 0.001763 1.219880 -v 0.038550 0.002332 1.167664 -v 0.094112 0.005005 -0.844651 -v 0.085538 0.004144 -0.868445 -v 0.543298 0.005005 -0.285885 -v 0.503650 0.005005 -0.217148 -v 0.210452 0.005004 0.179199 -v 0.208518 0.003449 0.625689 -v 0.376144 0.005005 -0.037735 -v 0.444037 0.005005 -0.133266 -v 0.281719 0.005004 0.095131 -v 0.351555 0.005005 -0.003135 -v 0.211438 0.004616 0.285574 -v 0.692452 0.005005 -0.503136 -v 0.328097 0.005005 -0.844651 -v 0.134460 0.003449 0.688572 -v 0.085538 0.004144 -0.944019 -v 0.692452 0.005005 -0.661249 -v 0.262386 0.003449 0.561630 -v 0.246805 0.004616 0.252800 -v 0.266827 0.003449 0.554858 -v 0.438548 0.004227 0.364175 -v 0.306103 0.003872 0.509104 -v 0.363732 0.004066 0.442089 -v 0.273937 0.003616 0.546594 -v 0.284772 0.003803 0.533376 -v 0.439558 0.004616 0.252800 -v 0.079451 0.003514 -0.944019 -v 0.079451 0.003514 -0.847886 -v 0.081480 0.003724 -0.947311 -v 0.083509 0.003934 -0.947311 -v 0.102666 0.003449 0.716074 -v 0.121780 0.005005 -0.844651 -v 0.103035 0.005005 -0.844651 -v 0.112407 0.005005 -0.844651 -v 0.092494 0.003449 0.724873 -v 0.097580 0.003449 0.720473 -v 0.094113 -0.005004 -0.868445 -v 0.080138 -0.003449 0.733836 -v 0.057022 -0.003449 1.005188 -v 0.045102 -0.002728 1.125801 -v 0.050748 -0.003070 1.072876 -v 0.029150 -0.001763 1.219880 -v 0.038550 -0.002332 1.167664 -v 0.085552 -0.004009 -0.868445 -v 0.543298 -0.005004 -0.285885 -v 0.503650 -0.005004 -0.217148 -v 0.210452 -0.005005 0.179199 -v 0.208518 -0.003449 0.625689 -v 0.376144 -0.005004 -0.037735 -v 0.444037 -0.005004 -0.133266 -v 0.281719 -0.005005 0.095131 -v 0.351555 -0.005004 -0.003135 -v 0.211438 -0.004616 0.285574 -v 0.692452 -0.005004 -0.503136 -v 0.328097 -0.005004 -0.844651 -v 0.134460 -0.003449 0.688572 -v 0.094112 -0.005004 -0.844651 -v 0.085552 -0.004009 -0.944019 -v 0.692452 -0.005004 -0.661249 -v 0.262386 -0.003449 0.561630 -v 0.246805 -0.004616 0.252800 -v 0.266827 -0.003449 0.554858 -v 0.438548 -0.004227 0.364175 -v 0.306103 -0.003872 0.509104 -v 0.363732 -0.004066 0.442089 -v 0.273937 -0.003616 0.546594 -v 0.284772 -0.003803 0.533376 -v 0.439558 -0.004616 0.252800 -v 0.079462 -0.003400 -0.944019 -v 0.079463 -0.003400 -0.847886 -v 0.081492 -0.003603 -0.947311 -v 0.083522 -0.003806 -0.947311 -v 0.121820 -0.005004 -0.844651 -v 0.102666 -0.003449 0.716074 -v 0.092494 -0.003449 0.724873 -v 0.097580 -0.003449 0.720473 -v 0.112448 -0.005004 -0.844651 -v 0.103076 -0.005004 -0.844651 -v 0.032303 0.050675 0.861569 -v 0.039486 0.047100 0.861569 -v 0.024284 -0.053512 0.875816 -v 0.016170 -0.055568 0.886519 -v 0.024284 0.053511 0.875816 -v 0.032303 -0.050675 0.861569 -v 0.016170 0.055567 0.886519 -v 0.039486 -0.047100 0.861569 -v 0.008040 0.056813 0.894421 -v 0.008040 -0.056813 0.894421 -v 0.069003 0.006898 0.861569 -v 0.068998 -0.000000 0.867553 -v 0.069003 -0.006898 0.861569 -v 0.067490 0.013696 0.861569 -v 0.067490 -0.013696 0.861569 -v 0.064993 0.020294 0.861569 -v 0.064993 -0.020294 0.861569 -v 0.061548 0.026596 0.861569 -v 0.061548 -0.026596 0.861569 -v 0.057206 0.032511 0.861569 -v 0.057206 -0.032511 0.861569 -v 0.052029 0.037951 0.861569 -v 0.052029 -0.037951 0.861569 -v 0.046094 0.042838 0.861569 -v 0.046094 -0.042838 0.861569 -v 0.068747 0.003449 0.867553 -v 0.068747 -0.003449 0.867553 -v 0.043204 -0.051268 0.631045 -v 0.033354 -0.053710 0.620846 -v 0.022486 -0.055402 0.612819 -v 0.061537 -0.043937 0.641696 -v 0.051719 -0.047933 0.641732 -v 0.051719 0.047933 0.641732 -v 0.061537 0.043937 0.641696 -v 0.070634 -0.039340 0.641640 -v 0.070634 0.039340 0.641640 -v 0.078786 -0.034005 0.641562 -v 0.078786 0.034004 0.641562 -v 0.085786 -0.028023 0.641466 -v 0.085786 0.028023 0.641466 -v 0.091450 -0.021506 0.641361 -v 0.091450 0.021506 0.641361 -v 0.095622 -0.014574 0.641263 -v 0.095622 0.014574 0.641263 -v 0.098179 -0.007359 0.641192 -v 0.098179 0.007358 0.641193 -v 0.011217 -0.056449 0.608997 -v 0.009729 0.056449 0.608997 -v 0.019503 0.055402 0.612819 -v 0.028930 0.053710 0.620846 -v 0.037473 0.051268 0.631045 -v 0.200386 -0.007359 0.599380 -v 0.200386 0.007358 0.599380 -v 0.138509 -0.007359 0.624694 -v 0.138509 0.007358 0.624694 -v 0.254254 -0.007359 0.535321 -v 0.254254 0.007358 0.535321 -v 0.269486 -0.007359 0.535321 -v 0.269486 0.007358 0.535321 -v 0.277618 -0.000000 0.542091 -v 0.111258 0.007358 0.635842 -v 0.111258 -0.007359 0.635842 -v 0.102539 -0.007359 0.639409 -v 0.106898 -0.007359 0.637626 -v 0.102539 0.007358 0.639409 -v 0.106898 0.007358 0.637626 -v 0.277618 0.003679 0.542104 -v 0.277618 -0.003679 0.542104 -v 0.011417 0.068545 0.719476 -v 0.014962 0.065709 0.719476 -v 0.007705 0.070601 0.719476 -v 0.003881 0.071847 0.719476 -v 0.003662 0.071663 0.677080 -v 0.007370 0.070514 0.677080 -v 0.011124 0.068657 0.677075 -v 0.014847 0.066081 0.677059 -v 0.012770 0.065709 0.823029 -v 0.009600 0.068545 0.834175 -v 0.006392 0.070601 0.842119 -v 0.003178 0.071847 0.847411 -v 0.003846 0.071483 0.635579 -v 0.007710 0.070436 0.638416 -v 0.011437 0.068743 0.644374 -v 0.014814 0.066301 0.651943 -v 0.007572 0.058957 0.890295 -v 0.005060 0.067458 0.866414 -v 0.009071 0.058944 0.610902 -v 0.006239 0.066871 0.622793 -v 0.024868 0.061077 0.670144 -v 0.034474 0.054074 0.665605 -v 0.018130 0.057999 0.614709 -v 0.012606 0.065729 0.625813 -v 0.010320 0.066046 0.860693 -v 0.015122 0.057958 0.882146 -v 0.022572 0.056111 0.871323 -v 0.015680 0.063851 0.852067 -v 0.021073 0.060889 0.839956 -v 0.029861 0.053463 0.857066 -v 0.034737 0.053706 0.721128 -v 0.025070 0.060701 0.719677 -v 0.024814 0.061297 0.640814 -v 0.034397 0.054296 0.632729 -v 0.026726 0.056519 0.622679 -v 0.018936 0.063882 0.632330 -v 0.003654 -0.014824 1.288277 -v 0.005414 -0.014276 1.288277 -v 0.007095 -0.013519 1.288277 -v 0.008673 -0.012565 1.288277 -v 0.001840 -0.015156 1.288277 -v 0.015212 -0.000920 1.288277 -v 0.015267 -0.000000 1.288277 -v 0.014824 -0.003654 1.288277 -v 0.015156 -0.001840 1.288277 -v 0.014275 -0.005414 1.288277 -v 0.013519 -0.007095 1.288277 -v 0.012565 -0.008673 1.288277 -v 0.011428 -0.010124 1.288277 -v 0.010124 -0.011428 1.288277 -v 0.007095 0.013519 1.288277 -v 0.008673 0.012565 1.288277 -v 0.005414 0.014275 1.288277 -v 0.003654 0.014824 1.288277 -v 0.001840 0.015156 1.288277 -v 0.015212 0.000920 1.288277 -v 0.014824 0.003654 1.288277 -v 0.015156 0.001840 1.288277 -v 0.014275 0.005414 1.288277 -v 0.013519 0.007095 1.288277 -v 0.012565 0.008673 1.288277 -v 0.011428 0.010124 1.288277 -v 0.010124 0.011428 1.288277 -v 0.028374 -0.104482 -0.281010 -v 0.036902 -0.104482 -0.289555 -v 0.036902 -0.104482 -0.679246 -v 0.020173 -0.104482 -0.272071 -v 0.012614 -0.104482 -0.262726 -v 0.005990 -0.104482 -0.252975 -v 0.077292 -0.104482 -0.289555 -v 0.079780 -0.104482 -0.289555 -v 0.073252 -0.104482 -0.289555 -v 0.067815 -0.104482 -0.289555 -v 0.061190 -0.104482 -0.289555 -v 0.053632 -0.104482 -0.289555 -v 0.045431 -0.104482 -0.289555 -v 0.028374 -0.104482 -0.221248 -v 0.036902 -0.104482 -0.221248 -v 0.020173 -0.104482 -0.221248 -v 0.012614 -0.104482 -0.221248 -v 0.005990 -0.104482 -0.221248 -v 0.077292 -0.104482 -0.221248 -v 0.079780 -0.104482 -0.221248 -v 0.073252 -0.104482 -0.221248 -v 0.067815 -0.104482 -0.221248 -v 0.061190 -0.104482 -0.221248 -v 0.053632 -0.104482 -0.221248 -v 0.045431 -0.104482 -0.221248 -v 0.020953 -0.104482 0.174231 -v 0.033508 -0.104482 0.174231 -v 0.047130 -0.104482 0.174231 -v 0.061297 -0.104482 0.174231 -v 0.009949 -0.104482 0.174231 -v 0.128386 -0.104482 0.174231 -v 0.132518 -0.104482 0.174231 -v 0.121675 -0.104482 0.174231 -v 0.112645 -0.104482 0.174231 -v 0.101640 -0.104482 0.174231 -v 0.089086 -0.104482 0.174231 -v 0.075464 -0.104482 0.174231 -v 0.010754 -0.104482 0.310872 -v 0.049051 -0.104482 0.310872 -v 0.132327 -0.104482 0.310872 -v 0.128364 -0.104482 0.310872 -v 0.121919 -0.104482 0.310872 -v 0.113223 -0.104482 0.310872 -v 0.102590 -0.104482 0.310872 -v 0.090403 -0.104482 0.310872 -v 0.077096 -0.104482 0.310872 -v 0.022389 -0.104482 0.310872 -v 0.023826 -0.104482 0.447514 -v 0.063147 -0.104482 0.310872 -v 0.064998 -0.104482 0.447514 -v 0.035304 -0.104482 0.310872 -v 0.037100 -0.104482 0.447514 -v 0.050971 -0.104482 0.447514 -v 0.078729 -0.104482 0.447514 -v 0.091719 -0.104482 0.447514 -v 0.103540 -0.104482 0.447514 -v 0.113802 -0.104482 0.447514 -v 0.122162 -0.104482 0.447514 -v 0.128342 -0.104482 0.447514 -v 0.132135 -0.104482 0.447514 -v 0.011559 -0.104482 0.447514 -v 0.095639 -0.104482 -0.289555 -v 0.121854 -0.104482 -0.006425 -v 0.114421 -0.104482 -0.006425 -v 0.091345 -0.104482 -0.137971 -v 0.106198 -0.104482 -0.040573 -v 0.100653 -0.104482 -0.040530 -v 0.086560 -0.104482 -0.138035 -v 0.110849 -0.104482 -0.006458 -v 0.121571 -0.104482 0.091623 -v 0.115218 -0.104482 0.091637 -v 0.105050 -0.104482 -0.006496 -v 0.094294 -0.104482 -0.137919 -v 0.109611 -0.104482 -0.040608 -v 0.125483 -0.104482 0.091610 -v 0.118163 -0.104482 -0.040608 -v 0.007076 -0.104482 -0.138164 -v 0.008231 -0.104482 -0.040446 -v 0.008589 -0.104482 -0.006563 -v 0.009421 -0.104482 0.091662 -v 0.014903 -0.104482 -0.138164 -v 0.017335 -0.104482 -0.040446 -v 0.018089 -0.104482 -0.006563 -v 0.019841 -0.104482 0.091662 -v 0.023832 -0.104482 -0.138164 -v 0.027721 -0.104482 -0.040446 -v 0.028927 -0.104482 -0.006563 -v 0.031730 -0.104482 0.091662 -v 0.033521 -0.104482 -0.138164 -v 0.038991 -0.104482 -0.040446 -v 0.040687 -0.104482 -0.006563 -v 0.044629 -0.104482 0.091662 -v 0.043597 -0.104482 -0.138163 -v 0.050712 -0.104482 -0.040447 -v 0.052917 -0.104482 -0.006563 -v 0.058045 -0.104482 0.091661 -v 0.053673 -0.104482 -0.138159 -v 0.062432 -0.104482 -0.040449 -v 0.065147 -0.104482 -0.006561 -v 0.071460 -0.104482 0.091661 -v 0.063363 -0.104482 -0.138152 -v 0.073701 -0.104482 -0.040454 -v 0.076908 -0.104482 -0.006558 -v 0.084359 -0.104482 0.091659 -v 0.072295 -0.104482 -0.138131 -v 0.084086 -0.104482 -0.040467 -v 0.087747 -0.104482 -0.006547 -v 0.096247 -0.104482 0.091656 -v 0.080127 -0.104482 -0.138092 -v 0.093187 -0.104482 -0.040493 -v 0.097250 -0.104482 -0.006527 -v 0.106667 -0.104482 0.091648 -v 0.133783 -0.104482 0.447254 -v 0.028374 -0.104482 -0.679246 -v 0.020173 -0.104482 -0.679246 -v 0.012614 -0.104482 -0.679246 -v 0.005990 -0.104482 -0.679246 -v 0.079780 -0.104482 -0.679246 -v 0.077292 -0.104482 -0.679246 -v 0.073252 -0.104482 -0.679246 -v 0.067815 -0.104482 -0.679246 -v 0.061190 -0.104482 -0.679246 -v 0.053632 -0.104482 -0.679246 -v 0.045431 -0.104482 -0.679246 -v 0.122970 -0.104482 -0.221248 -v 0.159341 -0.104482 -0.221248 -v 0.139507 -0.104482 0.091610 -v 0.159341 -0.104482 0.091610 -v 0.129043 -0.104482 -0.137919 -v 0.159341 -0.104482 -0.137919 -v 0.137412 -0.104482 0.174231 -v 0.159341 -0.104482 0.174231 -v 0.137245 -0.104482 0.310483 -v 0.159341 -0.104482 0.309671 -v 0.130242 -0.104482 -0.679246 -v 0.159341 -0.104482 -0.679246 -v 0.159341 -0.104482 -0.289555 -v 0.159341 -0.104482 0.445112 -v 0.159341 -0.104482 -0.040608 -v 0.159341 -0.104482 -0.006425 -v 0.127359 -0.104482 -0.289555 -v 0.136719 -0.104482 -0.006425 -v 0.135267 -0.104482 -0.040608 -v 0.137078 -0.104482 0.446735 -v 0.108573 -0.104482 -0.221248 -v 0.134832 -0.104482 0.091610 -v 0.117460 -0.104482 -0.137919 -v 0.135781 -0.104482 0.174231 -v 0.135606 -0.104482 0.310613 -v 0.108872 -0.104482 -0.679246 -v 0.111499 -0.104482 -0.289555 -v 0.129286 -0.104482 -0.006425 -v 0.126715 -0.104482 -0.040608 -v 0.135431 -0.104482 0.446994 -v 0.094176 -0.104482 -0.221248 -v 0.130158 -0.104482 0.091610 -v 0.105877 -0.104482 -0.137919 -v 0.134150 -0.104482 0.174231 -v 0.133966 -0.104482 0.310742 -v 0.087502 -0.104482 -0.679246 -v 0.033988 -0.046619 -0.872404 -v 0.034681 -0.042922 -0.872404 -v 0.043419 -0.044069 -0.872404 -v 0.043361 -0.047685 -0.872404 -v 0.025009 -0.043728 -0.872404 -v 0.026347 -0.040060 -0.872404 -v 0.016776 -0.039127 -0.872404 -v 0.018749 -0.035598 -0.872404 -v 0.009610 -0.032995 -0.872404 -v 0.012192 -0.029714 -0.872404 -v 0.003360 -0.025573 -0.872404 -v 0.006721 -0.022644 -0.872404 -v 0.090795 -0.009368 -0.872404 -v 0.087970 -0.008727 -0.872404 -v 0.088842 0.000045 -0.872404 -v 0.091724 0.000023 -0.872404 -v 0.088035 -0.018392 -0.872404 -v 0.085370 -0.017150 -0.872404 -v 0.083553 -0.026695 -0.872404 -v 0.081146 -0.024888 -0.872404 -v 0.077524 -0.033953 -0.872404 -v 0.075468 -0.031630 -0.872404 -v 0.070184 -0.039882 -0.872404 -v 0.068562 -0.037108 -0.872404 -v 0.061821 -0.044250 -0.872404 -v 0.060705 -0.041103 -0.872404 -v 0.052762 -0.046885 -0.872404 -v 0.052210 -0.043454 -0.872404 -v 0.043316 0.047683 -0.872404 -v 0.043328 0.044064 -0.872404 -v 0.034593 0.042899 -0.872404 -v 0.033945 0.046608 -0.872404 -v 0.026265 0.040020 -0.872404 -v 0.024969 0.043709 -0.872404 -v 0.018678 0.035542 -0.872404 -v 0.016740 0.039099 -0.872404 -v 0.012133 0.029645 -0.872404 -v 0.009581 0.032961 -0.872404 -v 0.006677 0.022564 -0.872404 -v 0.003338 0.025533 -0.872404 -v 0.087951 0.008816 -0.872404 -v 0.090786 0.009412 -0.872404 -v 0.085334 0.017234 -0.872404 -v 0.088017 0.018433 -0.872404 -v 0.081094 0.024962 -0.872404 -v 0.083527 0.026732 -0.872404 -v 0.075402 0.031693 -0.872404 -v 0.077491 0.033985 -0.872404 -v 0.068485 0.037156 -0.872404 -v 0.070145 0.039906 -0.872404 -v 0.060620 0.041134 -0.872404 -v 0.061778 0.044266 -0.872404 -v 0.052121 0.043468 -0.872404 -v 0.052717 0.046892 -0.872404 -v 0.004531 0.013740 -0.872404 -v 0.002265 0.015421 -0.872404 -v 0.002279 -0.015464 -0.872404 -v 0.004558 -0.013827 -0.872404 -v 0.001724 -0.005189 -0.872404 -v 0.003449 -0.004677 -0.872404 -v 0.001720 0.005144 -0.872404 -v 0.003440 0.004587 -0.872404 -v 0.088396 0.004431 -0.872404 -v 0.091255 0.004718 -0.872404 -v 0.088406 -0.004341 -0.872404 -v 0.091259 -0.004673 -0.872404 -v -0.001859 0.000458 1.327827 -v -0.000231 0.001900 1.327827 -v -0.000458 0.001859 1.327827 -v -0.000679 0.001790 1.327827 -v -0.001087 0.001575 1.327827 -v -0.000890 0.001695 1.327827 -v -0.001269 -0.001433 1.327827 -v -0.001907 0.000115 1.327827 -v -0.001900 0.000231 1.327827 -v -0.001433 -0.001269 1.327827 -v -0.001575 -0.001087 1.327827 -v -0.001695 -0.000890 1.327827 -v -0.001790 -0.000679 1.327827 -v -0.001859 -0.000458 1.327827 -v -0.001900 -0.000231 1.327827 -v 0.000000 0.001914 1.327827 -v -0.001907 -0.000115 1.327827 -v -0.001914 -0.000000 1.327827 -v 0.000000 -0.001914 1.327827 -v -0.000231 -0.001900 1.327827 -v -0.000458 -0.001859 1.327827 -v -0.000890 -0.001695 1.327827 -v -0.001087 -0.001575 1.327827 -v 0.003635 -0.005267 1.318804 -v 0.005402 -0.007826 1.310999 -v 0.006533 -0.009465 1.304929 -v 0.007745 -0.011222 1.296703 -v 0.006336 -0.012073 1.296703 -v 0.005344 -0.010183 1.304930 -v 0.004419 -0.008420 1.310999 -v 0.002974 -0.005666 1.318804 -v 0.001531 -0.006213 1.318804 -v 0.002276 -0.009233 1.310999 -v 0.002752 -0.011166 1.304930 -v 0.003263 -0.013239 1.296703 -v 0.001643 -0.013536 1.296703 -v 0.001386 -0.011417 1.304930 -v 0.001146 -0.009440 1.310999 -v 0.000771 -0.006353 1.318804 -v 0.006399 -0.000000 1.318804 -v 0.009509 -0.000000 1.310999 -v 0.011500 -0.000000 1.304930 -v 0.013635 -0.000000 1.296703 -v 0.013585 -0.000822 1.296703 -v 0.011458 -0.000693 1.304930 -v 0.009474 -0.000573 1.310999 -v 0.006376 -0.000386 1.318804 -v 0.006353 -0.000771 1.318804 -v 0.009439 -0.001146 1.310999 -v 0.011416 -0.001386 1.304930 -v 0.013536 -0.001644 1.296703 -v 0.013239 -0.003263 1.296703 -v 0.011166 -0.002752 1.304929 -v 0.009233 -0.002276 1.310999 -v 0.006213 -0.001532 1.318804 -v 0.012749 -0.004835 1.296703 -v 0.010753 -0.004078 1.304930 -v 0.008891 -0.003372 1.310999 -v 0.005983 -0.002269 1.318804 -v 0.012073 -0.006337 1.296703 -v 0.010183 -0.005345 1.304929 -v 0.008420 -0.004419 1.310999 -v 0.005666 -0.002974 1.318804 -v 0.011221 -0.007746 1.296703 -v 0.009464 -0.006533 1.304929 -v 0.007826 -0.005402 1.310999 -v 0.005266 -0.003635 1.318804 -v 0.010206 -0.009042 1.296703 -v 0.008608 -0.007626 1.304930 -v 0.007117 -0.006306 1.310999 -v 0.004790 -0.004244 1.318804 -v 0.006353 0.000771 1.318804 -v 0.009439 0.001146 1.310999 -v 0.011416 0.001386 1.304930 -v 0.013536 0.001643 1.296703 -v 0.013585 0.000822 1.296703 -v 0.011458 0.000693 1.304930 -v 0.009474 0.000573 1.310999 -v 0.006376 0.000386 1.318804 -v 0.009042 -0.010206 1.296703 -v 0.007626 -0.008608 1.304929 -v 0.006305 -0.007118 1.310999 -v 0.004243 -0.004790 1.318804 -v 0.002974 0.005666 1.318804 -v 0.004419 0.008420 1.310999 -v 0.005344 0.010183 1.304930 -v 0.006336 0.012073 1.296703 -v 0.007745 0.011221 1.296703 -v 0.006533 0.009465 1.304930 -v 0.005402 0.007826 1.310999 -v 0.003635 0.005266 1.318804 -v 0.002269 0.005983 1.318804 -v 0.003372 0.008891 1.310999 -v 0.004078 0.010753 1.304930 -v 0.004835 0.012749 1.296703 -v 0.001531 0.006213 1.318804 -v 0.002276 0.009233 1.310999 -v 0.002752 0.011166 1.304929 -v 0.003263 0.013239 1.296703 -v 0.000771 0.006353 1.318804 -v 0.001146 0.009440 1.310999 -v 0.001386 0.011416 1.304930 -v 0.001643 0.013536 1.296703 -v 0.006213 0.001531 1.318804 -v 0.009233 0.002276 1.310999 -v 0.011166 0.002752 1.304930 -v 0.013239 0.003263 1.296703 -v 0.005983 0.002269 1.318804 -v 0.008891 0.003372 1.310999 -v 0.010753 0.004078 1.304930 -v 0.012749 0.004835 1.296703 -v 0.005666 0.002974 1.318804 -v 0.008420 0.004419 1.310999 -v 0.010183 0.005344 1.304930 -v 0.012073 0.006336 1.296703 -v 0.005266 0.003635 1.318804 -v 0.007826 0.005402 1.310999 -v 0.009464 0.006533 1.304930 -v 0.011221 0.007746 1.296703 -v 0.004790 0.004243 1.318804 -v 0.007117 0.006306 1.310999 -v 0.008608 0.007626 1.304930 -v 0.010206 0.009042 1.296703 -v 0.004243 0.004790 1.318804 -v 0.006305 0.007117 1.310999 -v 0.007626 0.008608 1.304930 -v 0.009042 0.010206 1.296703 -v 0.002269 -0.005984 1.318804 -v 0.003372 -0.008891 1.310999 -v 0.004078 -0.010753 1.304930 -v 0.004835 -0.012749 1.296703 -v -0.043476 -0.040452 -0.868445 -v -0.035373 -0.039225 -0.868445 -v -0.027684 -0.036391 -0.868445 -v -0.020722 -0.032068 -0.868445 -v -0.014773 -0.026432 -0.868445 -v -0.085144 -0.008086 -0.868445 -v -0.082704 -0.015909 -0.868445 -v -0.078739 -0.023081 -0.868445 -v -0.073412 -0.029308 -0.868445 -v -0.066940 -0.034334 -0.868445 -v -0.059589 -0.037956 -0.868445 -v -0.051659 -0.040023 -0.868445 -v -0.010081 -0.019714 -0.868445 -v -0.043340 0.040445 -0.868445 -v -0.043304 0.051302 -0.288312 -v -0.035242 0.039191 -0.868445 -v -0.033296 0.050316 -0.279766 -v -0.027562 0.036332 -0.868445 -v -0.023672 0.047397 -0.270827 -v -0.020615 0.031985 -0.868445 -v -0.014803 0.042656 -0.261482 -v -0.014685 0.026329 -0.868445 -v -0.007029 0.036276 -0.251731 -v -0.085960 0.000068 -0.868445 -v -0.085117 0.008219 -0.868445 -v -0.093620 0.010009 -0.288312 -v -0.082651 0.016034 -0.868445 -v -0.090701 0.019633 -0.288312 -v -0.078662 0.023192 -0.868445 -v -0.085960 0.028502 -0.288312 -v -0.073313 0.029401 -0.868445 -v -0.079580 0.036276 -0.288312 -v -0.066825 0.034406 -0.868445 -v -0.071806 0.042656 -0.288312 -v -0.059461 0.038003 -0.868445 -v -0.062937 0.047397 -0.288312 -v -0.051525 0.040044 -0.868445 -v -0.053313 0.050316 -0.288312 -v -0.043304 0.052772 -0.220004 -v -0.033296 0.054235 -0.220004 -v -0.023672 0.054582 -0.220004 -v -0.014803 0.054739 -0.220004 -v -0.007029 0.055054 -0.220004 -v -0.093620 0.010009 -0.220004 -v -0.090701 0.019633 -0.220004 -v -0.085960 0.028502 -0.220004 -v -0.079580 0.036276 -0.220004 -v -0.071806 0.042656 -0.220004 -v -0.062937 0.047397 -0.220004 -v -0.053313 0.050316 -0.220004 -v -0.010015 0.019596 -0.868445 -v -0.071931 0.052772 0.175475 -v -0.055306 0.054235 0.175475 -v -0.039321 0.054582 0.175475 -v -0.024588 0.054739 0.175475 -v -0.011675 0.055054 0.175475 -v -0.155508 0.010009 0.175475 -v -0.150658 0.019633 0.175475 -v -0.142784 0.028502 0.175475 -v -0.132186 0.036276 0.175475 -v -0.119273 0.042656 0.175475 -v -0.104541 0.047397 0.175475 -v -0.088555 0.050316 0.175475 -v -0.046263 -0.047100 0.722040 -v -0.037847 -0.050675 0.722040 -v -0.028879 -0.053512 0.722040 -v -0.019490 -0.055568 0.722040 -v -0.009816 -0.056813 0.722040 -v -0.080846 -0.006898 0.722040 -v -0.079074 -0.013696 0.722040 -v -0.076148 -0.020294 0.722040 -v -0.072112 -0.026596 0.722040 -v -0.067024 -0.032511 0.722040 -v -0.060959 -0.037951 0.722040 -v -0.054005 -0.042838 0.722040 -v -0.046263 0.047100 0.722040 -v -0.037847 0.050675 0.722040 -v -0.080432 -0.000000 0.733836 -v -0.080846 0.006898 0.722040 -v -0.079074 0.013696 0.722040 -v -0.076148 0.020294 0.722040 -v -0.072112 0.026596 0.722040 -v -0.067024 0.032511 0.722040 -v -0.060959 0.037951 0.722040 -v -0.054005 0.042838 0.722040 -v -0.032510 -0.047100 1.005188 -v -0.026596 -0.050675 1.005188 -v -0.020294 -0.053512 1.005188 -v -0.013696 -0.055568 1.005188 -v -0.006898 -0.056813 1.005188 -v -0.056813 -0.006898 1.005188 -v -0.055567 -0.013696 1.005188 -v -0.053511 -0.020294 1.005188 -v -0.050675 -0.026596 1.005188 -v -0.047100 -0.032511 1.005188 -v -0.042837 -0.037951 1.005188 -v -0.037951 -0.042838 1.005188 -v -0.032510 0.047100 1.005188 -v -0.026596 0.050675 1.005188 -v -0.020294 0.053511 1.005188 -v -0.013696 0.055567 1.005188 -v -0.006898 0.056813 1.005188 -v -0.057230 -0.000000 1.005188 -v -0.056813 0.006898 1.005188 -v -0.055567 0.013696 1.005188 -v -0.053511 0.020294 1.005188 -v -0.050675 0.026596 1.005188 -v -0.047100 0.032511 1.005188 -v -0.042837 0.037951 1.005188 -v -0.037951 0.042838 1.005188 -v -0.036905 -0.033267 -0.944019 -v -0.043777 -0.034308 -0.944019 -v -0.021037 0.040082 1.125801 -v -0.023670 0.045099 1.072876 -v -0.013596 0.025906 1.219880 -v -0.017981 0.034259 1.167664 -v -0.021979 0.031842 1.167664 -v -0.016620 0.024078 1.219880 -v -0.028933 0.041918 1.072876 -v -0.025715 0.037254 1.125801 -v -0.016052 -0.042326 1.125801 -v -0.018061 -0.047624 1.072876 -v -0.010374 -0.027356 1.219880 -v -0.013720 -0.036177 1.167664 -v -0.009259 -0.037567 1.167664 -v -0.007001 -0.028407 1.219880 -v -0.012189 -0.049454 1.072876 -v -0.010833 -0.043952 1.125801 -v -0.016052 0.042326 1.125801 -v -0.018061 0.047624 1.072876 -v -0.010374 0.027356 1.219880 -v -0.013720 0.036177 1.167664 -v -0.021037 -0.040082 1.125801 -v -0.023670 -0.045100 1.072876 -v -0.013596 -0.025906 1.219880 -v -0.017981 -0.034260 1.167664 -v -0.010833 0.043952 1.125801 -v -0.012189 0.049454 1.072876 -v -0.007001 0.028407 1.219880 -v -0.009259 0.037567 1.167664 -v -0.025714 -0.037254 1.125801 -v -0.028933 -0.041918 1.072876 -v -0.016620 -0.024078 1.219880 -v -0.021979 -0.031842 1.167664 -v -0.005456 0.044937 1.125801 -v -0.006139 0.050562 1.072876 -v -0.003526 0.029044 1.219880 -v -0.004664 0.038409 1.167664 -v -0.004663 -0.038409 1.167664 -v -0.003526 -0.029044 1.219880 -v -0.006139 -0.050562 1.072876 -v -0.005456 -0.044937 1.125801 -v -0.044937 0.005456 1.125801 -v -0.050562 0.006139 1.072876 -v -0.029043 0.003526 1.219880 -v -0.038409 0.004664 1.167664 -v -0.038691 -0.000000 1.167664 -v -0.029257 -0.000000 1.219880 -v -0.050933 -0.000000 1.072876 -v -0.045267 -0.000000 1.125801 -v -0.038409 -0.004664 1.167664 -v -0.029043 -0.003527 1.219880 -v -0.050562 -0.006139 1.072876 -v -0.044937 -0.005456 1.125801 -v -0.043952 0.010833 1.125801 -v -0.049453 0.012189 1.072876 -v -0.028407 0.007002 1.219880 -v -0.037567 0.009259 1.167664 -v -0.037567 -0.009260 1.167664 -v -0.028407 -0.007002 1.219880 -v -0.049453 -0.012189 1.072876 -v -0.043952 -0.010833 1.125801 -v -0.042325 0.016052 1.125801 -v -0.047624 0.018061 1.072876 -v -0.027355 0.010375 1.219880 -v -0.036177 0.013720 1.167664 -v -0.036177 -0.013720 1.167664 -v -0.027355 -0.010375 1.219880 -v -0.047624 -0.018061 1.072876 -v -0.042325 -0.016052 1.125801 -v -0.040082 0.021037 1.125801 -v -0.045099 0.023670 1.072876 -v -0.025906 0.013596 1.219880 -v -0.034259 0.017981 1.167664 -v -0.034259 -0.017981 1.167664 -v -0.025906 -0.013596 1.219880 -v -0.045099 -0.023670 1.072876 -v -0.040082 -0.021037 1.125801 -v -0.037254 0.025715 1.125801 -v -0.041917 0.028934 1.072876 -v -0.024078 0.016620 1.219880 -v -0.031842 0.021979 1.167664 -v -0.031842 -0.021979 1.167664 -v -0.024078 -0.016620 1.219880 -v -0.041917 -0.028934 1.072876 -v -0.037254 -0.025715 1.125801 -v -0.033883 0.030018 1.125801 -v -0.038124 0.033775 1.072876 -v -0.021899 0.019401 1.219880 -v -0.028961 0.025657 1.167664 -v -0.028961 -0.025657 1.167664 -v -0.021899 -0.019401 1.219880 -v -0.038124 -0.033775 1.072876 -v -0.033883 -0.030018 1.125801 -v -0.030018 0.033883 1.125801 -v -0.033775 0.038124 1.072876 -v -0.019401 0.021899 1.219880 -v -0.025657 0.028961 1.167664 -v -0.025657 -0.028961 1.167664 -v -0.019401 -0.021899 1.219880 -v -0.033775 -0.038125 1.072876 -v -0.030018 -0.033883 1.125801 -v -0.059814 0.052455 0.448757 -v -0.076274 0.049936 0.448757 -v -0.043537 0.054046 0.448757 -v -0.027959 0.055153 0.448757 -v -0.013564 0.055934 0.448757 -v -0.027959 -0.055153 0.448757 -v -0.013564 -0.055934 0.448757 -v -0.076274 -0.049936 0.448757 -v -0.059814 -0.052455 0.448757 -v -0.155059 0.008454 0.448757 -v -0.155059 -0.008454 0.448757 -v -0.150607 0.016664 0.448757 -v -0.150607 -0.016665 0.448757 -v -0.143355 0.024398 0.448757 -v -0.143355 -0.024398 0.448757 -v -0.133544 0.031436 0.448757 -v -0.133544 -0.031436 0.448757 -v -0.121503 0.037583 0.448757 -v -0.121503 -0.037583 0.448757 -v -0.107631 0.042674 0.448757 -v -0.107631 -0.042674 0.448757 -v -0.092388 0.046577 0.448757 -v -0.092388 -0.046577 0.448757 -v -0.043537 -0.054047 0.448757 -v -0.052144 0.051639 0.574125 -v -0.058076 0.052086 0.505357 -v -0.037556 0.051047 0.664887 -v -0.048922 0.051491 0.596783 -v -0.038456 0.053801 0.574132 -v -0.042499 0.053936 0.505355 -v -0.036203 0.053757 0.596769 -v -0.025052 0.055343 0.574134 -v -0.027453 0.055239 0.505355 -v -0.023670 0.055378 0.596765 -v -0.012290 0.056337 0.574134 -v -0.013380 0.056116 0.505355 -v -0.011644 0.056410 0.596765 -v -0.025052 -0.055343 0.574134 -v -0.027453 -0.055239 0.505355 -v -0.018642 -0.055481 0.664915 -v -0.023670 -0.055378 0.596765 -v -0.065743 -0.048635 0.574109 -v -0.073718 -0.049348 0.505360 -v -0.046692 -0.047693 0.664841 -v -0.061490 -0.048399 0.596813 -v -0.128933 0.007744 0.573487 -v -0.147604 0.008131 0.505438 -v -0.087599 0.007231 0.663561 -v -0.118744 0.007606 0.597714 -v -0.125393 0.015308 0.573596 -v -0.143462 0.016049 0.505428 -v -0.085328 0.014329 0.663731 -v -0.115632 0.015048 0.597590 -v -0.119635 0.022521 0.573728 -v -0.136705 0.023547 0.505415 -v -0.081638 0.021166 0.663966 -v -0.110523 0.022166 0.597421 -v -0.111845 0.029221 0.573852 -v -0.127551 0.030433 0.505401 -v -0.076648 0.027620 0.664217 -v -0.103548 0.028807 0.597244 -v -0.102260 0.035259 0.573954 -v -0.116292 0.036532 0.505388 -v -0.070499 0.033580 0.664445 -v -0.094893 0.034830 0.597085 -v -0.091162 0.040509 0.574029 -v -0.103287 0.041695 0.505376 -v -0.063345 0.038943 0.664627 -v -0.084803 0.040113 0.596958 -v -0.078872 0.044862 0.574079 -v -0.088945 0.045802 0.505366 -v -0.055350 0.043621 0.664759 -v -0.073562 0.044550 0.596868 -v -0.038455 -0.053801 0.574132 -v -0.042499 -0.053936 0.505355 -v -0.028139 -0.053623 0.664908 -v -0.036203 -0.053757 0.596769 -v -0.061490 0.048399 0.596813 -v -0.046692 0.047693 0.664841 -v -0.073718 0.049348 0.505360 -v -0.065743 0.048635 0.574109 -v -0.011644 -0.056410 0.596765 -v -0.009263 -0.056629 0.664916 -v -0.013380 -0.056116 0.505355 -v -0.012290 -0.056337 0.574134 -v -0.048922 -0.051491 0.596783 -v -0.037556 -0.051047 0.664887 -v -0.058076 -0.052087 0.505357 -v -0.052144 -0.051639 0.574125 -v -0.118744 -0.007606 0.597714 -v -0.087599 -0.007231 0.663561 -v -0.147604 -0.008131 0.505438 -v -0.128933 -0.007744 0.573487 -v -0.115632 -0.015048 0.597590 -v -0.085328 -0.014330 0.663731 -v -0.143462 -0.016049 0.505428 -v -0.125393 -0.015309 0.573596 -v -0.110523 -0.022166 0.597421 -v -0.081638 -0.021166 0.663966 -v -0.136705 -0.023547 0.505415 -v -0.119635 -0.022521 0.573728 -v -0.103548 -0.028807 0.597244 -v -0.076648 -0.027620 0.664217 -v -0.127551 -0.030433 0.505401 -v -0.111845 -0.029221 0.573852 -v -0.094893 -0.034830 0.597085 -v -0.070499 -0.033580 0.664444 -v -0.116292 -0.036532 0.505388 -v -0.102260 -0.035260 0.573954 -v -0.084803 -0.040113 0.596958 -v -0.063345 -0.038943 0.664627 -v -0.103287 -0.041695 0.505376 -v -0.091162 -0.040509 0.574029 -v -0.073562 -0.044550 0.596868 -v -0.055350 -0.043621 0.664759 -v -0.088945 -0.045802 0.505366 -v -0.078872 -0.044862 0.574079 -v -0.128627 0.010009 -0.039364 -v -0.110653 0.010009 -0.136675 -v -0.147252 0.010009 0.092854 -v -0.134272 0.010009 -0.005182 -v -0.124621 0.019633 -0.039329 -v -0.107192 0.019633 -0.136728 -v -0.142661 0.019633 0.092866 -v -0.130079 0.019633 -0.005215 -v -0.118114 0.028502 -0.039287 -v -0.101577 0.028502 -0.136792 -v -0.135206 0.028502 0.092880 -v -0.123275 0.028502 -0.005253 -v -0.109353 0.036276 -0.039249 -v -0.094028 0.036276 -0.136849 -v -0.125172 0.036276 0.092892 -v -0.114121 0.036276 -0.005284 -v -0.098673 0.042656 -0.039223 -v -0.084836 0.042656 -0.136888 -v -0.112945 0.042656 0.092899 -v -0.102970 0.042656 -0.005304 -v -0.086487 0.047397 -0.039210 -v -0.074355 0.047397 -0.136908 -v -0.098994 0.047397 0.092903 -v -0.090250 0.047397 -0.005314 -v -0.073262 0.050316 -0.039206 -v -0.062984 0.050316 -0.136915 -v -0.083857 0.050316 0.092904 -v -0.076449 0.050316 -0.005317 -v -0.059509 0.052772 -0.039203 -v -0.051160 0.052772 -0.136919 -v -0.068114 0.052772 0.092905 -v -0.062097 0.052772 -0.005319 -v -0.045755 0.054235 -0.039202 -v -0.039336 0.054235 -0.136920 -v -0.052372 0.054235 0.092905 -v -0.047745 0.054235 -0.005320 -v -0.032530 0.054582 -0.039202 -v -0.027966 0.054582 -0.136920 -v -0.037234 0.054582 0.092905 -v -0.033945 0.054582 -0.005320 -v -0.020342 0.054739 -0.039202 -v -0.017488 0.054739 -0.136920 -v -0.023284 0.054739 0.092905 -v -0.021227 0.054739 -0.005320 -v -0.009659 0.055054 -0.039202 -v -0.008304 0.055054 -0.136920 -v -0.011056 0.055054 0.092905 -v -0.010079 0.055054 -0.005320 -v -0.006837 -0.012189 -0.868445 -v -0.005173 -0.004165 -0.868445 -v -0.005160 0.004030 -0.868445 -v -0.006796 0.012060 -0.868445 -v -0.043304 -0.051302 -0.868445 -v -0.033296 -0.050316 -0.868445 -v -0.023672 -0.047397 -0.868445 -v -0.014803 -0.042656 -0.868445 -v -0.007029 -0.036276 -0.868445 -v -0.094606 0.000000 -0.868445 -v -0.093620 -0.010009 -0.868445 -v -0.090701 -0.019633 -0.868445 -v -0.085960 -0.028502 -0.868445 -v -0.079580 -0.036276 -0.868445 -v -0.071806 -0.042656 -0.868445 -v -0.062936 -0.047397 -0.868445 -v -0.053313 -0.050316 -0.868445 -v -0.043304 0.051302 -0.868445 -v -0.033296 0.050316 -0.868445 -v -0.023672 0.047397 -0.868445 -v -0.014803 0.042656 -0.868445 -v -0.007029 0.036276 -0.868445 -v -0.093620 0.010009 -0.868445 -v -0.090701 0.019633 -0.868445 -v -0.085960 0.028502 -0.868445 -v -0.079580 0.036276 -0.868445 -v -0.071806 0.042656 -0.868445 -v -0.062936 0.047397 -0.868445 -v -0.053313 0.050316 -0.868445 -v -0.543298 0.000000 -0.285885 -v -0.529952 -0.010009 -0.288312 -v -0.490305 -0.010009 -0.219575 -v -0.503650 0.000000 -0.217148 -v -0.529952 0.010009 -0.288312 -v -0.490305 0.010009 -0.219575 -v -0.200386 -0.010009 0.175475 -v -0.210452 -0.000000 0.179199 -v -0.200386 0.010009 0.175475 -v -0.200386 -0.006898 0.618893 -v -0.208518 -0.000000 0.625689 -v -0.200386 0.006898 0.618893 -v -0.430416 -0.008454 0.357379 -v -0.200386 -0.008454 0.442670 -v -0.200386 0.008454 0.442670 -v -0.200386 -0.008131 0.499350 -v -0.200386 -0.007744 0.566389 -v -0.200386 -0.007606 0.590616 -v -0.200386 -0.007231 0.603888 -v -0.200386 0.007744 0.566389 -v -0.200386 0.008131 0.499350 -v -0.200386 0.007231 0.603888 -v -0.200386 0.007606 0.590616 -v -0.438548 -0.000000 0.364175 -v -0.258694 0.006898 0.548062 -v -0.266827 -0.000000 0.554858 -v -0.258694 -0.006898 0.548062 -v -0.430696 -0.010009 -0.135699 -v -0.362796 -0.010009 -0.040157 -v -0.338213 -0.010009 -0.005566 -v -0.268372 -0.010009 0.092706 -v -0.444032 0.000000 -0.133259 -v -0.376148 0.000000 -0.037740 -v -0.351552 0.000000 -0.003131 -v -0.281720 0.000000 0.095129 -v -0.362796 0.010009 -0.040157 -v -0.430696 0.010009 -0.135699 -v -0.268372 0.010009 0.092706 -v -0.338213 0.010009 -0.005566 -v -0.074102 0.051354 0.312116 -v -0.057560 0.053345 0.312116 -v -0.041429 0.054314 0.312116 -v -0.026274 0.054946 0.312116 -v -0.012620 0.055494 0.312116 -v -0.155283 0.009231 0.312116 -v -0.150633 0.018149 0.312116 -v -0.143069 0.026450 0.312116 -v -0.132865 0.033856 0.312116 -v -0.120388 0.040120 0.312116 -v -0.106086 0.045035 0.312116 -v -0.090471 0.048447 0.312116 -v -0.211438 -0.000000 0.285574 -v -0.200386 -0.009231 0.309072 -v -0.200386 0.009231 0.309072 -v -0.043304 -0.051302 -0.679246 -v -0.033296 -0.050316 -0.679246 -v -0.023672 -0.047397 -0.679246 -v -0.014803 -0.042656 -0.679246 -v -0.007029 -0.036276 -0.679246 -v -0.093620 -0.010009 -0.679246 -v -0.090701 -0.019633 -0.679246 -v -0.085960 -0.028502 -0.679246 -v -0.079580 -0.036276 -0.679246 -v -0.071806 -0.042656 -0.679246 -v -0.062936 -0.047397 -0.679246 -v -0.053313 -0.050316 -0.679246 -v -0.043304 0.051302 -0.681877 -v -0.033296 0.050316 -0.678489 -v -0.023672 0.047397 -0.674944 -v -0.014803 0.042656 -0.671239 -v -0.007029 0.036276 -0.667372 -v -0.093620 0.010009 -0.681877 -v -0.090701 0.019633 -0.681877 -v -0.085960 0.028502 -0.681877 -v -0.079580 0.036276 -0.681877 -v -0.071806 0.042656 -0.681877 -v -0.062936 0.047397 -0.681877 -v -0.053313 0.050316 -0.681877 -v -0.011280 0.003418 -0.944019 -v -0.011292 -0.003532 -0.944019 -v -0.012702 -0.010338 -0.944019 -v -0.012668 0.010228 -0.944019 -v -0.692452 0.000000 -0.503136 -v -0.684723 -0.010009 -0.506792 -v -0.684723 0.010009 -0.506792 -v -0.214958 0.010009 -0.005182 -v -0.134640 -0.000000 0.688572 -v -0.172945 0.008454 0.446355 -v -0.221468 0.010009 -0.039364 -v -0.249910 0.010009 -0.220004 -v -0.236397 0.010009 -0.136675 -v -0.186983 -0.010009 -0.288312 -v -0.265793 0.010009 -0.288312 -v -0.128016 -0.006898 0.681339 -v -0.168431 0.008131 0.503036 -v -0.186983 -0.010009 -0.220004 -v -0.094604 0.000000 -0.844651 -v -0.328097 0.000000 -0.844651 -v -0.186983 -0.010009 -0.005182 -v -0.132104 0.007231 0.640015 -v -0.128016 0.006898 0.681339 -v -0.186983 -0.010009 0.092854 -v -0.186983 -0.010009 -0.039364 -v -0.186983 -0.010009 -0.136675 -v -0.132104 -0.007231 0.640015 -v -0.150959 -0.007606 0.594913 -v -0.197999 0.010009 0.092854 -v -0.173216 0.010009 0.175475 -v -0.186983 -0.008454 0.446355 -v -0.186983 -0.010009 0.175475 -v -0.157128 0.007744 0.570686 -v -0.150959 0.007606 0.594913 -v -0.157128 -0.007744 0.570686 -v -0.168431 -0.008131 0.503036 -v -0.186983 -0.009231 0.310915 -v -0.173080 0.009231 0.310915 -v -0.325610 0.010009 -0.681659 -v -0.186983 -0.010009 -0.679246 -v -0.033296 -0.050316 -0.837338 -v -0.023672 -0.047397 -0.837338 -v -0.014803 -0.042656 -0.837338 -v -0.007029 -0.036276 -0.837338 -v -0.093620 -0.010009 -0.837338 -v -0.090701 -0.019633 -0.837338 -v -0.085960 -0.028502 -0.837338 -v -0.079580 -0.036276 -0.837338 -v -0.071806 -0.042656 -0.837338 -v -0.062936 -0.047397 -0.837338 -v -0.053313 -0.050316 -0.837338 -v -0.050603 0.033962 -0.944019 -v -0.057335 0.032231 -0.944019 -v -0.063580 0.029181 -0.944019 -v -0.069083 0.024936 -0.944019 -v -0.073619 0.019670 -0.944019 -v -0.077002 0.013599 -0.944019 -v -0.079094 0.006971 -0.944019 -v -0.015398 0.016619 -0.944019 -v -0.019359 0.022331 -0.944019 -v -0.024388 0.027127 -0.944019 -v -0.030280 0.030814 -0.944019 -v -0.036794 0.033238 -0.944019 -v -0.033296 0.050316 -0.837338 -v -0.023672 0.047397 -0.837338 -v -0.014803 0.042656 -0.837338 -v -0.007029 0.036276 -0.837338 -v -0.093620 0.010009 -0.837338 -v -0.090701 0.019633 -0.837338 -v -0.085960 0.028502 -0.837338 -v -0.079580 0.036276 -0.837338 -v -0.071806 0.042656 -0.837338 -v -0.062936 0.047397 -0.837338 -v -0.053313 0.050316 -0.837338 -v -0.043662 0.034302 -0.944019 -v -0.050717 -0.033944 -0.944019 -v -0.057443 -0.032191 -0.944019 -v -0.063677 -0.029120 -0.944019 -v -0.069166 -0.024856 -0.944019 -v -0.073685 -0.019575 -0.944019 -v -0.077047 -0.013493 -0.944019 -v -0.079117 -0.006858 -0.944019 -v -0.079808 0.000058 -0.944019 -v -0.015454 -0.016720 -0.944019 -v -0.019434 -0.022418 -0.944019 -v -0.692452 0.000000 -0.661249 -v -0.684723 -0.010009 -0.657105 -v -0.684723 0.010009 -0.657105 -v -0.043304 -0.051302 -0.837338 -v -0.024479 -0.027198 -0.944019 -v -0.043304 0.051302 -0.837338 -v -0.030384 -0.030864 -0.944019 -v -0.328097 0.010009 -0.837338 -v -0.328097 -0.010009 -0.837338 -v -0.254254 -0.006898 0.554834 -v -0.262386 -0.000000 0.561630 -v -0.254254 0.006898 0.554834 -v -0.254254 -0.008454 0.357379 -v -0.254254 0.008454 0.357379 -v -0.254254 -0.008131 0.435291 -v -0.254254 -0.007744 0.502330 -v -0.254254 -0.007606 0.526557 -v -0.254254 -0.007231 0.539829 -v -0.254254 0.007744 0.502330 -v -0.254254 0.008131 0.435291 -v -0.254254 0.007231 0.539829 -v -0.254254 0.007606 0.526557 -v -0.246805 -0.000000 0.252800 -v -0.254254 -0.009231 0.259572 -v -0.254254 0.009231 0.259572 -v -0.430416 0.008454 0.357379 -v -0.355600 -0.008131 0.435291 -v -0.297971 -0.007744 0.502330 -v -0.276640 -0.007606 0.526557 -v -0.265805 -0.007231 0.539829 -v -0.297971 0.007744 0.502330 -v -0.355600 0.008131 0.435291 -v -0.265805 0.007231 0.539829 -v -0.276640 0.007606 0.526557 -v -0.363732 -0.000000 0.442091 -v -0.306103 -0.000000 0.509082 -v -0.284772 -0.000000 0.533399 -v -0.273937 -0.000000 0.546563 -v -0.439558 -0.000000 0.252800 -v -0.430416 -0.009231 0.259572 -v -0.430416 0.009231 0.259572 -v -0.043476 -0.040452 -0.944019 -v -0.035373 -0.039225 -0.944019 -v -0.005173 -0.004165 -0.944019 -v -0.005160 0.004030 -0.944019 -v -0.006796 0.012060 -0.944019 -v -0.006836 -0.012189 -0.944019 -v -0.010081 -0.019714 -0.944019 -v -0.010015 0.019596 -0.944019 -v -0.051525 0.040044 -0.944019 -v -0.043340 0.040445 -0.944019 -v -0.059461 0.038003 -0.944019 -v -0.066825 0.034406 -0.944019 -v -0.073313 0.029401 -0.944019 -v -0.078661 0.023192 -0.944019 -v -0.085117 0.008219 -0.944019 -v -0.082650 0.016034 -0.944019 -v -0.085959 0.000068 -0.944019 -v -0.014685 0.026329 -0.944019 -v -0.020615 0.031985 -0.944019 -v -0.027562 0.036332 -0.944019 -v -0.035242 0.039191 -0.944019 -v -0.051659 -0.040023 -0.944019 -v -0.059589 -0.037956 -0.944019 -v -0.066940 -0.034334 -0.944019 -v -0.073412 -0.029308 -0.944019 -v -0.078739 -0.023081 -0.944019 -v -0.082704 -0.015909 -0.944019 -v -0.085144 -0.008086 -0.944019 -v -0.014773 -0.026432 -0.944019 -v -0.020722 -0.032068 -0.944019 -v -0.027684 -0.036391 -0.944019 -v -0.043777 -0.034308 -0.847886 -v -0.036905 -0.033267 -0.847886 -v -0.011292 -0.003532 -0.847886 -v -0.011280 0.003418 -0.847886 -v -0.012668 0.010228 -0.847886 -v -0.012703 -0.010338 -0.847886 -v -0.015454 -0.016720 -0.847886 -v -0.015398 0.016619 -0.847886 -v -0.050604 0.033962 -0.847886 -v -0.043662 0.034302 -0.847886 -v -0.057335 0.032231 -0.847886 -v -0.063580 0.029181 -0.847886 -v -0.069083 0.024936 -0.847886 -v -0.073619 0.019670 -0.847886 -v -0.079094 0.006971 -0.847886 -v -0.077002 0.013599 -0.847886 -v -0.079809 0.000058 -0.847886 -v -0.019359 0.022330 -0.847886 -v -0.024388 0.027127 -0.847886 -v -0.030280 0.030814 -0.847886 -v -0.036794 0.033238 -0.847886 -v -0.050718 -0.033944 -0.847886 -v -0.057443 -0.032191 -0.847886 -v -0.063678 -0.029120 -0.847886 -v -0.069167 -0.024856 -0.847886 -v -0.073685 -0.019575 -0.847886 -v -0.077048 -0.013493 -0.847886 -v -0.079117 -0.006858 -0.847886 -v -0.019434 -0.022418 -0.847886 -v -0.024479 -0.027198 -0.847886 -v -0.030384 -0.030864 -0.847886 -v -0.035884 -0.037239 -0.947311 -v -0.036394 -0.035253 -0.947311 -v -0.043676 -0.036356 -0.947311 -v -0.043576 -0.038404 -0.947311 -v -0.007200 0.003826 -0.947311 -v -0.009240 0.003622 -0.947311 -v -0.009252 -0.003743 -0.947311 -v -0.007213 -0.003954 -0.947311 -v -0.008753 0.011449 -0.947311 -v -0.010710 0.010839 -0.947311 -v -0.010747 -0.010955 -0.947311 -v -0.008792 -0.011572 -0.947311 -v -0.013663 -0.017718 -0.947311 -v -0.011872 -0.018716 -0.947311 -v -0.011809 0.018604 -0.947311 -v -0.013603 0.017612 -0.947311 -v -0.051218 0.038016 -0.947311 -v -0.050911 0.035989 -0.947311 -v -0.043554 0.036350 -0.947311 -v -0.043447 0.038397 -0.947311 -v -0.058752 0.036079 -0.947311 -v -0.058044 0.034155 -0.947311 -v -0.065743 0.032665 -0.947311 -v -0.064661 0.030923 -0.947311 -v -0.071903 0.027913 -0.947311 -v -0.070493 0.026424 -0.947311 -v -0.076981 0.022018 -0.947311 -v -0.075300 0.020844 -0.947311 -v -0.083109 0.007803 -0.947311 -v -0.081101 0.007387 -0.947311 -v -0.078885 0.014411 -0.947311 -v -0.080768 0.015222 -0.947311 -v -0.083909 0.000065 -0.947311 -v -0.081859 0.000061 -0.947311 -v -0.016243 0.024996 -0.947311 -v -0.017801 0.023663 -0.947311 -v -0.021873 0.030366 -0.947311 -v -0.023130 0.028747 -0.947311 -v -0.028468 0.034492 -0.947311 -v -0.029374 0.032653 -0.947311 -v -0.035759 0.037206 -0.947311 -v -0.036276 0.035222 -0.947311 -v -0.051031 -0.035971 -0.947311 -v -0.051345 -0.037997 -0.947311 -v -0.058158 -0.034113 -0.947311 -v -0.058873 -0.036034 -0.947311 -v -0.064765 -0.030858 -0.947311 -v -0.065852 -0.032596 -0.947311 -v -0.070581 -0.026340 -0.947311 -v -0.071997 -0.027824 -0.947311 -v -0.075369 -0.020744 -0.947311 -v -0.077054 -0.021912 -0.947311 -v -0.078933 -0.014298 -0.947311 -v -0.080818 -0.015104 -0.947311 -v -0.081126 -0.007267 -0.947311 -v -0.083135 -0.007677 -0.947311 -v -0.017880 -0.023756 -0.947311 -v -0.016327 -0.025094 -0.947311 -v -0.023227 -0.028821 -0.947311 -v -0.021975 -0.030445 -0.947311 -v -0.029484 -0.032707 -0.947311 -v -0.028584 -0.034549 -0.947311 -v -0.144303 0.010009 -0.220004 -v -0.096143 -0.006898 0.708841 -v -0.154358 0.008131 0.504659 -v -0.102031 0.007231 0.655925 -v -0.102031 -0.007231 0.655925 -v -0.163709 0.010009 0.092854 -v -0.160859 -0.008454 0.447978 -v -0.138076 0.007744 0.572579 -v -0.138076 -0.007744 0.572579 -v -0.160437 0.010009 -0.005182 -v -0.102925 -0.000000 0.716074 -v -0.160859 0.008454 0.447978 -v -0.158734 0.010009 -0.039364 -v -0.151430 0.010009 -0.136675 -v -0.121740 0.010009 -0.288312 -v -0.096143 0.006898 0.708841 -v -0.129191 -0.007606 0.596806 -v -0.161250 0.010009 0.175475 -v -0.129191 0.007606 0.596806 -v -0.154358 -0.008131 0.504659 -v -0.161055 0.009231 0.311726 -v -0.121740 0.010009 -0.681659 -v -0.152836 -0.010009 -0.679246 -v -0.121820 0.000000 -0.844651 -v -0.121820 -0.010009 -0.837338 -v -0.121740 0.010009 -0.837338 -v -0.093620 0.018582 -0.288312 -v -0.282199 0.245637 -0.681877 -v -0.282199 0.245637 -0.837338 -v -0.121740 0.018582 -0.288312 -v -0.305861 0.230444 -0.681659 -v -0.305861 0.230444 -0.837338 -v -0.127408 0.010009 -0.220004 -v -0.110514 0.010009 -0.220004 -v -0.091044 -0.006898 0.713241 -v -0.085945 -0.006898 0.717640 -v -0.152107 0.008131 0.504919 -v -0.149855 0.008131 0.505178 -v -0.097221 0.007231 0.658470 -v -0.092410 0.007231 0.661015 -v -0.097221 -0.007231 0.658470 -v -0.092410 -0.007231 0.661015 -v -0.158223 0.010009 0.092854 -v -0.152738 0.010009 0.092854 -v -0.158925 -0.008454 0.448238 -v -0.156992 -0.008454 0.448498 -v -0.135028 0.007744 0.572882 -v -0.131980 0.007744 0.573184 -v -0.135028 -0.007744 0.572882 -v -0.131980 -0.007744 0.573184 -v -0.142993 0.010009 -0.005182 -v -0.151715 0.010009 -0.005182 -v -0.092778 -0.000000 0.724873 -v -0.097851 -0.000000 0.720473 -v -0.156992 0.008454 0.448498 -v -0.158925 0.008454 0.448238 -v -0.138662 0.010009 -0.039364 -v -0.148698 0.010009 -0.039364 -v -0.124245 0.010009 -0.136675 -v -0.137837 0.010009 -0.136675 -v -0.102993 0.010009 -0.288312 -v -0.112367 0.010009 -0.288312 -v -0.085945 0.006898 0.717640 -v -0.091044 0.006898 0.713241 -v -0.122226 -0.007606 0.597412 -v -0.125709 -0.007606 0.597109 -v -0.157422 0.010009 0.175475 -v -0.159336 0.010009 0.175475 -v -0.122226 0.007606 0.597412 -v -0.125709 0.007606 0.597109 -v -0.149855 -0.008131 0.505178 -v -0.152107 -0.008131 0.504919 -v -0.157207 0.009231 0.311986 -v -0.159131 0.009231 0.311856 -v -0.102682 -0.010009 -0.679246 -v -0.127759 -0.010009 -0.679246 -v -0.103076 0.000000 -0.844651 -v -0.112448 0.000000 -0.844651 -v -0.103076 -0.010009 -0.837338 -v -0.112448 -0.010009 -0.837338 -v -0.102993 0.010009 -0.837338 -v -0.112367 0.010009 -0.846601 -v -0.102978 0.025266 -0.284397 -v -0.112351 0.025266 -0.284397 -v -0.293685 0.246205 -0.677890 -v -0.301572 0.241141 -0.677817 -v -0.293562 0.245986 -0.846818 -v -0.301450 0.240922 -0.846818 -v -0.112367 0.010009 -0.837338 -v -0.102993 0.010009 -0.846601 -v -0.094113 0.005005 -0.868445 -v -0.080138 0.003449 0.733836 -v -0.057022 0.003449 1.005188 -v -0.045102 0.002728 1.125801 -v -0.050748 0.003070 1.072876 -v -0.029150 0.001763 1.219880 -v -0.038550 0.002332 1.167664 -v -0.094112 0.005005 -0.844651 -v -0.085538 0.004144 -0.868445 -v -0.543298 0.005005 -0.285885 -v -0.503650 0.005005 -0.217148 -v -0.210452 0.005004 0.179199 -v -0.208518 0.003449 0.625689 -v -0.376144 0.005005 -0.037735 -v -0.444037 0.005005 -0.133266 -v -0.281719 0.005004 0.095131 -v -0.351555 0.005005 -0.003135 -v -0.211438 0.004616 0.285574 -v -0.692452 0.005005 -0.503136 -v -0.328097 0.005005 -0.844651 -v -0.134460 0.003449 0.688572 -v -0.085538 0.004144 -0.944019 -v -0.692452 0.005005 -0.661249 -v -0.262386 0.003449 0.561630 -v -0.246805 0.004616 0.252800 -v -0.266827 0.003449 0.554858 -v -0.438548 0.004227 0.364175 -v -0.306103 0.003872 0.509104 -v -0.363732 0.004066 0.442089 -v -0.273937 0.003616 0.546594 -v -0.284772 0.003803 0.533376 -v -0.439558 0.004616 0.252800 -v -0.079451 0.003514 -0.944019 -v -0.079451 0.003514 -0.847886 -v -0.081480 0.003724 -0.947311 -v -0.083509 0.003934 -0.947311 -v -0.102666 0.003449 0.716074 -v -0.121780 0.005005 -0.844651 -v -0.103035 0.005005 -0.844651 -v -0.112407 0.005005 -0.844651 -v -0.092494 0.003449 0.724873 -v -0.097580 0.003449 0.720473 -v -0.094113 -0.005004 -0.868445 -v -0.080138 -0.003449 0.733836 -v -0.057022 -0.003449 1.005188 -v -0.045102 -0.002728 1.125801 -v -0.050748 -0.003070 1.072876 -v -0.029150 -0.001763 1.219880 -v -0.038550 -0.002332 1.167664 -v -0.085552 -0.004009 -0.868445 -v -0.543298 -0.005004 -0.285885 -v -0.503650 -0.005004 -0.217148 -v -0.210452 -0.005005 0.179199 -v -0.208518 -0.003449 0.625689 -v -0.376144 -0.005004 -0.037735 -v -0.444037 -0.005004 -0.133266 -v -0.281719 -0.005005 0.095131 -v -0.351555 -0.005004 -0.003135 -v -0.211438 -0.004616 0.285574 -v -0.692452 -0.005004 -0.503136 -v -0.328097 -0.005004 -0.844651 -v -0.134460 -0.003449 0.688572 -v -0.094112 -0.005004 -0.844651 -v -0.085552 -0.004009 -0.944019 -v -0.692452 -0.005004 -0.661249 -v -0.262386 -0.003449 0.561630 -v -0.246805 -0.004616 0.252800 -v -0.266827 -0.003449 0.554858 -v -0.438548 -0.004227 0.364175 -v -0.306103 -0.003872 0.509104 -v -0.363732 -0.004066 0.442089 -v -0.273937 -0.003616 0.546594 -v -0.284772 -0.003803 0.533376 -v -0.439558 -0.004616 0.252800 -v -0.079462 -0.003400 -0.944019 -v -0.079463 -0.003400 -0.847886 -v -0.081492 -0.003603 -0.947311 -v -0.083522 -0.003806 -0.947311 -v -0.121820 -0.005004 -0.844651 -v -0.102666 -0.003449 0.716074 -v -0.092494 -0.003449 0.724873 -v -0.097580 -0.003449 0.720473 -v -0.112448 -0.005004 -0.844651 -v -0.103076 -0.005004 -0.844651 -v -0.032303 0.050675 0.861569 -v -0.039486 0.047100 0.861569 -v -0.024284 -0.053512 0.875816 -v -0.016170 -0.055568 0.886519 -v -0.024284 0.053511 0.875816 -v -0.032303 -0.050675 0.861569 -v -0.016170 0.055567 0.886519 -v -0.039486 -0.047100 0.861569 -v -0.008040 0.056813 0.894421 -v -0.008040 -0.056813 0.894421 -v -0.069003 0.006898 0.861569 -v -0.068998 -0.000000 0.867553 -v -0.069003 -0.006898 0.861569 -v -0.067490 0.013696 0.861569 -v -0.067490 -0.013696 0.861569 -v -0.064993 0.020294 0.861569 -v -0.064993 -0.020294 0.861569 -v -0.061548 0.026596 0.861569 -v -0.061548 -0.026596 0.861569 -v -0.057206 0.032511 0.861569 -v -0.057206 -0.032511 0.861569 -v -0.052029 0.037951 0.861569 -v -0.052029 -0.037951 0.861569 -v -0.046094 0.042838 0.861569 -v -0.046094 -0.042838 0.861569 -v -0.068747 0.003449 0.867553 -v -0.068747 -0.003449 0.867553 -v -0.043204 -0.051268 0.631045 -v -0.033354 -0.053710 0.620846 -v -0.022486 -0.055402 0.612819 -v -0.061537 -0.043937 0.641696 -v -0.051719 -0.047933 0.641732 -v -0.051719 0.047933 0.641732 -v -0.061537 0.043937 0.641696 -v -0.070634 -0.039340 0.641640 -v -0.070634 0.039340 0.641640 -v -0.078786 -0.034005 0.641562 -v -0.078786 0.034004 0.641562 -v -0.085786 -0.028023 0.641466 -v -0.085786 0.028023 0.641466 -v -0.091450 -0.021506 0.641361 -v -0.091450 0.021506 0.641361 -v -0.095622 -0.014574 0.641263 -v -0.095622 0.014574 0.641263 -v -0.098179 -0.007359 0.641192 -v -0.098179 0.007358 0.641193 -v -0.011217 -0.056449 0.608997 -v -0.009729 0.056449 0.608997 -v -0.019503 0.055402 0.612819 -v -0.028930 0.053710 0.620846 -v -0.037473 0.051268 0.631045 -v -0.200386 -0.007359 0.599380 -v -0.200386 0.007358 0.599380 -v -0.138509 -0.007359 0.624694 -v -0.138509 0.007358 0.624694 -v -0.254254 -0.007359 0.535321 -v -0.254254 0.007358 0.535321 -v -0.269486 -0.007359 0.535321 -v -0.269486 0.007358 0.535321 -v -0.277618 -0.000000 0.542091 -v -0.111258 0.007358 0.635842 -v -0.111258 -0.007359 0.635842 -v -0.102539 -0.007359 0.639409 -v -0.106898 -0.007359 0.637626 -v -0.102539 0.007358 0.639409 -v -0.106898 0.007358 0.637626 -v -0.277618 0.003679 0.542104 -v -0.277618 -0.003679 0.542104 -v -0.011417 0.068545 0.719476 -v -0.014962 0.065709 0.719476 -v -0.007705 0.070601 0.719476 -v -0.003881 0.071847 0.719476 -v -0.003662 0.071663 0.677080 -v -0.007370 0.070514 0.677080 -v -0.011124 0.068657 0.677075 -v -0.014847 0.066081 0.677059 -v -0.012770 0.065709 0.823029 -v -0.009600 0.068545 0.834175 -v -0.006392 0.070601 0.842119 -v -0.003178 0.071847 0.847411 -v -0.003846 0.071483 0.635579 -v -0.007710 0.070436 0.638416 -v -0.011437 0.068743 0.644374 -v -0.014814 0.066301 0.651943 -v -0.007572 0.058957 0.890295 -v -0.005060 0.067458 0.866414 -v -0.009071 0.058944 0.610902 -v -0.006239 0.066871 0.622793 -v -0.024868 0.061077 0.670144 -v -0.034474 0.054074 0.665605 -v -0.018130 0.057999 0.614709 -v -0.012606 0.065729 0.625813 -v -0.010320 0.066046 0.860693 -v -0.015122 0.057958 0.882146 -v -0.022572 0.056111 0.871323 -v -0.015680 0.063851 0.852067 -v -0.021073 0.060889 0.839956 -v -0.029861 0.053463 0.857066 -v -0.034737 0.053706 0.721128 -v -0.025070 0.060701 0.719677 -v -0.024814 0.061297 0.640814 -v -0.034397 0.054296 0.632729 -v -0.026726 0.056519 0.622679 -v -0.018936 0.063882 0.632330 -v -0.003654 -0.014824 1.288277 -v -0.005414 -0.014276 1.288277 -v -0.007095 -0.013519 1.288277 -v -0.008673 -0.012565 1.288277 -v -0.001840 -0.015156 1.288277 -v -0.015212 -0.000920 1.288277 -v -0.015267 -0.000000 1.288277 -v -0.014824 -0.003654 1.288277 -v -0.015156 -0.001840 1.288277 -v -0.014275 -0.005414 1.288277 -v -0.013519 -0.007095 1.288277 -v -0.012565 -0.008673 1.288277 -v -0.011428 -0.010124 1.288277 -v -0.010124 -0.011428 1.288277 -v -0.007095 0.013519 1.288277 -v -0.008673 0.012565 1.288277 -v -0.005414 0.014275 1.288277 -v -0.003654 0.014824 1.288277 -v -0.001840 0.015156 1.288277 -v -0.015212 0.000920 1.288277 -v -0.014824 0.003654 1.288277 -v -0.015156 0.001840 1.288277 -v -0.014275 0.005414 1.288277 -v -0.013519 0.007095 1.288277 -v -0.012565 0.008673 1.288277 -v -0.011428 0.010124 1.288277 -v -0.010124 0.011428 1.288277 -v -0.028374 -0.104482 -0.281010 -v -0.036902 -0.104482 -0.289555 -v -0.036902 -0.104482 -0.679246 -v -0.020173 -0.104482 -0.272071 -v -0.012614 -0.104482 -0.262726 -v -0.005990 -0.104482 -0.252975 -v -0.077292 -0.104482 -0.289555 -v -0.079780 -0.104482 -0.289555 -v -0.073252 -0.104482 -0.289555 -v -0.067815 -0.104482 -0.289555 -v -0.061190 -0.104482 -0.289555 -v -0.053632 -0.104482 -0.289555 -v -0.045431 -0.104482 -0.289555 -v -0.028374 -0.104482 -0.221248 -v -0.036902 -0.104482 -0.221248 -v -0.020173 -0.104482 -0.221248 -v -0.012614 -0.104482 -0.221248 -v -0.005990 -0.104482 -0.221248 -v -0.077292 -0.104482 -0.221248 -v -0.079780 -0.104482 -0.221248 -v -0.073252 -0.104482 -0.221248 -v -0.067815 -0.104482 -0.221248 -v -0.061190 -0.104482 -0.221248 -v -0.053632 -0.104482 -0.221248 -v -0.045431 -0.104482 -0.221248 -v -0.020953 -0.104482 0.174231 -v -0.033508 -0.104482 0.174231 -v -0.047130 -0.104482 0.174231 -v -0.061297 -0.104482 0.174231 -v -0.009949 -0.104482 0.174231 -v -0.128386 -0.104482 0.174231 -v -0.132518 -0.104482 0.174231 -v -0.121675 -0.104482 0.174231 -v -0.112645 -0.104482 0.174231 -v -0.101640 -0.104482 0.174231 -v -0.089086 -0.104482 0.174231 -v -0.075464 -0.104482 0.174231 -v -0.010754 -0.104482 0.310872 -v -0.049051 -0.104482 0.310872 -v -0.132327 -0.104482 0.310872 -v -0.128364 -0.104482 0.310872 -v -0.121919 -0.104482 0.310872 -v -0.113223 -0.104482 0.310872 -v -0.102590 -0.104482 0.310872 -v -0.090403 -0.104482 0.310872 -v -0.077096 -0.104482 0.310872 -v -0.022389 -0.104482 0.310872 -v -0.023826 -0.104482 0.447514 -v -0.063147 -0.104482 0.310872 -v -0.064998 -0.104482 0.447514 -v -0.035304 -0.104482 0.310872 -v -0.037100 -0.104482 0.447514 -v -0.050971 -0.104482 0.447514 -v -0.078729 -0.104482 0.447514 -v -0.091719 -0.104482 0.447514 -v -0.103540 -0.104482 0.447514 -v -0.113802 -0.104482 0.447514 -v -0.122162 -0.104482 0.447514 -v -0.128342 -0.104482 0.447514 -v -0.132135 -0.104482 0.447514 -v -0.011559 -0.104482 0.447514 -v -0.095639 -0.104482 -0.289555 -v -0.121854 -0.104482 -0.006425 -v -0.114421 -0.104482 -0.006425 -v -0.091345 -0.104482 -0.137971 -v -0.106198 -0.104482 -0.040573 -v -0.100653 -0.104482 -0.040530 -v -0.086560 -0.104482 -0.138035 -v -0.110849 -0.104482 -0.006458 -v -0.121571 -0.104482 0.091623 -v -0.115218 -0.104482 0.091637 -v -0.105050 -0.104482 -0.006496 -v -0.094294 -0.104482 -0.137919 -v -0.109611 -0.104482 -0.040608 -v -0.125483 -0.104482 0.091610 -v -0.118163 -0.104482 -0.040608 -v -0.007076 -0.104482 -0.138164 -v -0.008231 -0.104482 -0.040446 -v -0.008589 -0.104482 -0.006563 -v -0.009421 -0.104482 0.091662 -v -0.014903 -0.104482 -0.138164 -v -0.017335 -0.104482 -0.040446 -v -0.018089 -0.104482 -0.006563 -v -0.019841 -0.104482 0.091662 -v -0.023832 -0.104482 -0.138164 -v -0.027721 -0.104482 -0.040446 -v -0.028927 -0.104482 -0.006563 -v -0.031730 -0.104482 0.091662 -v -0.033521 -0.104482 -0.138164 -v -0.038991 -0.104482 -0.040446 -v -0.040687 -0.104482 -0.006563 -v -0.044629 -0.104482 0.091662 -v -0.043597 -0.104482 -0.138163 -v -0.050712 -0.104482 -0.040447 -v -0.052917 -0.104482 -0.006563 -v -0.058045 -0.104482 0.091661 -v -0.053673 -0.104482 -0.138159 -v -0.062432 -0.104482 -0.040449 -v -0.065147 -0.104482 -0.006561 -v -0.071460 -0.104482 0.091661 -v -0.063363 -0.104482 -0.138152 -v -0.073701 -0.104482 -0.040454 -v -0.076908 -0.104482 -0.006558 -v -0.084359 -0.104482 0.091659 -v -0.072295 -0.104482 -0.138131 -v -0.084086 -0.104482 -0.040467 -v -0.087747 -0.104482 -0.006547 -v -0.096247 -0.104482 0.091656 -v -0.080127 -0.104482 -0.138092 -v -0.093187 -0.104482 -0.040493 -v -0.097250 -0.104482 -0.006527 -v -0.106667 -0.104482 0.091648 -v -0.133783 -0.104482 0.447254 -v -0.028374 -0.104482 -0.679246 -v -0.020173 -0.104482 -0.679246 -v -0.012614 -0.104482 -0.679246 -v -0.005990 -0.104482 -0.679246 -v -0.079780 -0.104482 -0.679246 -v -0.077292 -0.104482 -0.679246 -v -0.073252 -0.104482 -0.679246 -v -0.067815 -0.104482 -0.679246 -v -0.061190 -0.104482 -0.679246 -v -0.053632 -0.104482 -0.679246 -v -0.045431 -0.104482 -0.679246 -v -0.122970 -0.104482 -0.221248 -v -0.159341 -0.104482 -0.221248 -v -0.139507 -0.104482 0.091610 -v -0.159341 -0.104482 0.091610 -v -0.129043 -0.104482 -0.137919 -v -0.159341 -0.104482 -0.137919 -v -0.137412 -0.104482 0.174231 -v -0.159341 -0.104482 0.174231 -v -0.137245 -0.104482 0.310483 -v -0.159341 -0.104482 0.309671 -v -0.130242 -0.104482 -0.679246 -v -0.159341 -0.104482 -0.679246 -v -0.159341 -0.104482 -0.289555 -v -0.159341 -0.104482 0.445112 -v -0.159341 -0.104482 -0.040608 -v -0.159341 -0.104482 -0.006425 -v -0.127359 -0.104482 -0.289555 -v -0.136719 -0.104482 -0.006425 -v -0.135267 -0.104482 -0.040608 -v -0.137078 -0.104482 0.446735 -v -0.108573 -0.104482 -0.221248 -v -0.134832 -0.104482 0.091610 -v -0.117460 -0.104482 -0.137919 -v -0.135781 -0.104482 0.174231 -v -0.135606 -0.104482 0.310613 -v -0.108872 -0.104482 -0.679246 -v -0.111499 -0.104482 -0.289555 -v -0.129286 -0.104482 -0.006425 -v -0.126715 -0.104482 -0.040608 -v -0.135431 -0.104482 0.446994 -v -0.094176 -0.104482 -0.221248 -v -0.130158 -0.104482 0.091610 -v -0.105877 -0.104482 -0.137919 -v -0.134150 -0.104482 0.174231 -v -0.133966 -0.104482 0.310742 -v -0.087502 -0.104482 -0.679246 -v -0.033988 -0.046619 -0.872404 -v -0.034681 -0.042922 -0.872404 -v -0.043419 -0.044069 -0.872404 -v -0.043361 -0.047685 -0.872404 -v -0.025009 -0.043728 -0.872404 -v -0.026347 -0.040060 -0.872404 -v -0.016776 -0.039127 -0.872404 -v -0.018749 -0.035598 -0.872404 -v -0.009610 -0.032995 -0.872404 -v -0.012192 -0.029714 -0.872404 -v -0.003360 -0.025573 -0.872404 -v -0.006721 -0.022644 -0.872404 -v -0.090795 -0.009368 -0.872404 -v -0.087970 -0.008727 -0.872404 -v -0.088842 0.000045 -0.872404 -v -0.091724 0.000023 -0.872404 -v -0.088035 -0.018392 -0.872404 -v -0.085370 -0.017150 -0.872404 -v -0.083553 -0.026695 -0.872404 -v -0.081146 -0.024888 -0.872404 -v -0.077524 -0.033953 -0.872404 -v -0.075468 -0.031630 -0.872404 -v -0.070184 -0.039882 -0.872404 -v -0.068562 -0.037108 -0.872404 -v -0.061821 -0.044250 -0.872404 -v -0.060705 -0.041103 -0.872404 -v -0.052762 -0.046885 -0.872404 -v -0.052210 -0.043454 -0.872404 -v -0.043316 0.047683 -0.872404 -v -0.043328 0.044064 -0.872404 -v -0.034593 0.042899 -0.872404 -v -0.033945 0.046608 -0.872404 -v -0.026265 0.040020 -0.872404 -v -0.024969 0.043709 -0.872404 -v -0.018678 0.035542 -0.872404 -v -0.016740 0.039099 -0.872404 -v -0.012133 0.029645 -0.872404 -v -0.009581 0.032961 -0.872404 -v -0.006677 0.022564 -0.872404 -v -0.003338 0.025533 -0.872404 -v -0.087951 0.008816 -0.872404 -v -0.090786 0.009412 -0.872404 -v -0.085334 0.017234 -0.872404 -v -0.088017 0.018433 -0.872404 -v -0.081094 0.024962 -0.872404 -v -0.083527 0.026732 -0.872404 -v -0.075402 0.031693 -0.872404 -v -0.077491 0.033985 -0.872404 -v -0.068485 0.037156 -0.872404 -v -0.070145 0.039906 -0.872404 -v -0.060620 0.041134 -0.872404 -v -0.061778 0.044266 -0.872404 -v -0.052121 0.043468 -0.872404 -v -0.052717 0.046892 -0.872404 -v -0.004531 0.013740 -0.872404 -v -0.002265 0.015421 -0.872404 -v -0.002279 -0.015464 -0.872404 -v -0.004558 -0.013827 -0.872404 -v -0.001724 -0.005189 -0.872404 -v -0.003449 -0.004677 -0.872404 -v -0.001720 0.005144 -0.872404 -v -0.003440 0.004587 -0.872404 -v -0.088396 0.004431 -0.872404 -v -0.091255 0.004718 -0.872404 -v -0.088406 -0.004341 -0.872404 -v -0.091259 -0.004673 -0.872404 -v 0.000000 0.028502 -0.239948 -v 0.000000 0.054955 -0.220004 -v 0.000000 0.054955 0.175475 -v 0.000000 -0.057231 0.722040 -v 0.000000 -0.057231 1.005188 -v 0.000000 0.057230 1.005188 -v 0.000000 0.045267 1.125801 -v -0.000000 0.050934 1.072876 -v 0.000000 0.029257 1.219880 -v 0.000000 0.038691 1.167664 -v 0.000000 -0.038691 1.167664 -v 0.000000 -0.029257 1.219880 -v -0.000000 -0.050934 1.072876 -v 0.000000 -0.045267 1.125801 -v 0.000000 0.056093 0.448757 -v 0.000000 -0.056093 0.448757 -v 0.000000 0.056615 0.574134 -v 0.000000 0.056328 0.505355 -v 0.000000 0.056709 0.596765 -v 0.000000 -0.056709 0.596765 -v 0.000000 -0.056993 0.664915 -v 0.000000 -0.056328 0.505355 -v 0.000000 -0.056615 0.574134 -v 0.000000 0.054955 -0.005320 -v 0.000000 0.054955 0.092905 -v 0.000000 0.054955 -0.136920 -v 0.000000 0.054955 -0.039202 -v 0.000000 -0.028502 -0.868445 -v 0.000000 0.017101 -0.868445 -v 0.000000 0.028502 -0.868445 -v 0.000000 -0.017101 -0.868445 -v 0.000000 -0.005700 -0.868445 -v 0.000000 0.005700 -0.868445 -v 0.000000 0.055524 0.312116 -v 0.000000 -0.028502 -0.679246 -v 0.000000 0.028502 -0.662700 -v 0.000000 -0.028502 -0.837338 -v 0.000000 0.028502 -0.837338 -v 0.000000 0.057230 0.897798 -v 0.000000 -0.057231 0.897798 -v 0.000000 -0.056760 0.607625 -v 0.000000 0.056760 0.607625 -v 0.000000 0.072264 0.719476 -v 0.000000 0.072026 0.677080 -v 0.000000 0.072264 0.849917 -v 0.000000 0.071793 0.634208 -v 0.000000 0.059288 0.609556 -v 0.000000 0.067175 0.621402 -v 0.000000 0.059238 0.893871 -v 0.000000 0.067953 0.868944 -v 0.000000 -0.015268 1.288277 -v 0.000000 0.015268 1.288277 -v 0.000000 -0.104482 -0.241191 -v 0.000000 -0.104482 -0.221248 -v 0.000000 -0.104482 0.174231 -v 0.000000 -0.104482 0.310872 -v 0.000000 -0.104482 0.447514 -v 0.000000 -0.104482 -0.040446 -v 0.000000 -0.104482 -0.138164 -v 0.000000 -0.104482 0.091662 -v 0.000000 -0.104482 -0.006563 -v 0.000000 -0.104482 -0.679246 -v 0.000679 -0.001790 1.327827 -v 0.001269 0.001433 1.327827 -v 0.001433 0.001269 1.327827 -v 0.001575 0.001087 1.327827 -v 0.001695 0.000890 1.327827 -v 0.001790 0.000679 1.327827 -v 0.001859 0.000458 1.327827 -v 0.000231 0.001900 1.327827 -v 0.000458 0.001859 1.327827 -v 0.000679 0.001790 1.327827 -v 0.001087 0.001575 1.327827 -v 0.000890 0.001695 1.327827 -v 0.001269 -0.001433 1.327827 -v 0.001907 0.000115 1.327827 -v 0.001900 0.000231 1.327827 -v 0.001433 -0.001269 1.327827 -v 0.001575 -0.001087 1.327827 -v 0.001695 -0.000890 1.327827 -v -0.001695 0.000890 1.327827 -v 0.001790 -0.000679 1.327827 -v 0.001859 -0.000458 1.327827 -v 0.001900 -0.000231 1.327827 -v 0.001907 -0.000115 1.327827 -v 0.001914 -0.000000 1.327827 -v 0.000231 -0.001900 1.327827 -v 0.000458 -0.001859 1.327827 -v 0.000890 -0.001695 1.327827 -v 0.001087 -0.001575 1.327827 -v -0.001790 0.000679 1.327827 -v -0.003635 -0.005267 1.318804 -v -0.005402 -0.007826 1.310999 -v -0.006533 -0.009465 1.304929 -v -0.007745 -0.011222 1.296703 -v -0.006336 -0.012073 1.296703 -v -0.005344 -0.010183 1.304930 -v -0.004419 -0.008420 1.310999 -v -0.002974 -0.005666 1.318804 -v -0.001531 -0.006213 1.318804 -v -0.002276 -0.009233 1.310999 -v -0.002752 -0.011166 1.304930 -v -0.003263 -0.013239 1.296703 -v -0.001643 -0.013536 1.296703 -v -0.001386 -0.011417 1.304930 -v -0.001146 -0.009440 1.310999 -v -0.000771 -0.006353 1.318804 -v 0.000000 -0.013635 1.296703 -v 0.000000 -0.011500 1.304930 -v 0.000000 -0.009509 1.310999 -v 0.000000 -0.006399 1.318804 -v -0.006399 -0.000000 1.318804 -v -0.009509 -0.000000 1.310999 -v -0.011500 -0.000000 1.304930 -v -0.013635 -0.000000 1.296703 -v -0.013585 -0.000822 1.296703 -v -0.011458 -0.000693 1.304930 -v -0.009474 -0.000573 1.310999 -v -0.006376 -0.000386 1.318804 -v 0.000000 0.013635 1.296703 -v 0.000000 0.011500 1.304930 -v 0.000000 0.009509 1.310999 -v 0.000000 0.006399 1.318804 -v -0.006353 -0.000771 1.318804 -v -0.009439 -0.001146 1.310999 -v -0.011416 -0.001386 1.304930 -v -0.013536 -0.001644 1.296703 -v -0.013239 -0.003263 1.296703 -v -0.011166 -0.002752 1.304929 -v -0.009233 -0.002276 1.310999 -v -0.006213 -0.001532 1.318804 -v -0.012749 -0.004835 1.296703 -v -0.010753 -0.004078 1.304930 -v -0.008891 -0.003372 1.310999 -v -0.005983 -0.002269 1.318804 -v -0.012073 -0.006337 1.296703 -v -0.010183 -0.005345 1.304929 -v -0.008420 -0.004419 1.310999 -v -0.005666 -0.002974 1.318804 -v -0.011221 -0.007746 1.296703 -v -0.009464 -0.006533 1.304929 -v -0.007826 -0.005402 1.310999 -v -0.005266 -0.003635 1.318804 -v -0.010206 -0.009042 1.296703 -v -0.008608 -0.007626 1.304930 -v -0.007117 -0.006306 1.310999 -v -0.004790 -0.004244 1.318804 -v -0.006353 0.000771 1.318804 -v -0.009439 0.001146 1.310999 -v -0.011416 0.001386 1.304930 -v -0.013536 0.001643 1.296703 -v -0.013585 0.000822 1.296703 -v -0.011458 0.000693 1.304930 -v -0.009474 0.000573 1.310999 -v -0.006376 0.000386 1.318804 -v -0.009042 -0.010206 1.296703 -v -0.007626 -0.008608 1.304929 -v -0.006305 -0.007118 1.310999 -v -0.004243 -0.004790 1.318804 -v -0.002974 0.005666 1.318804 -v -0.004419 0.008420 1.310999 -v -0.005344 0.010183 1.304930 -v -0.006336 0.012073 1.296703 -v -0.007745 0.011221 1.296703 -v -0.006533 0.009465 1.304930 -v -0.005402 0.007826 1.310999 -v -0.003635 0.005266 1.318804 -v -0.002269 0.005983 1.318804 -v -0.003372 0.008891 1.310999 -v -0.004078 0.010753 1.304930 -v -0.004835 0.012749 1.296703 -v -0.001531 0.006213 1.318804 -v -0.002276 0.009233 1.310999 -v -0.002752 0.011166 1.304929 -v -0.003263 0.013239 1.296703 -v -0.000771 0.006353 1.318804 -v -0.001146 0.009440 1.310999 -v -0.001386 0.011416 1.304930 -v -0.001643 0.013536 1.296703 -v -0.006213 0.001531 1.318804 -v -0.009233 0.002276 1.310999 -v -0.011166 0.002752 1.304930 -v -0.013239 0.003263 1.296703 -v -0.005983 0.002269 1.318804 -v -0.008891 0.003372 1.310999 -v -0.010753 0.004078 1.304930 -v -0.012749 0.004835 1.296703 -v -0.005666 0.002974 1.318804 -v -0.008420 0.004419 1.310999 -v -0.010183 0.005344 1.304930 -v -0.012073 0.006336 1.296703 -v -0.005266 0.003635 1.318804 -v -0.007826 0.005402 1.310999 -v -0.009464 0.006533 1.304930 -v -0.011221 0.007746 1.296703 -v -0.004790 0.004243 1.318804 -v -0.007117 0.006306 1.310999 -v -0.008608 0.007626 1.304930 -v -0.010206 0.009042 1.296703 -v -0.004243 0.004790 1.318804 -v -0.006305 0.007117 1.310999 -v -0.007626 0.008608 1.304930 -v -0.009042 0.010206 1.296703 -v -0.002269 -0.005984 1.318804 -v -0.003372 -0.008891 1.310999 -v -0.004078 -0.010753 1.304930 -v -0.004835 -0.012749 1.296703 -v -0.001575 0.001087 1.327827 -v -0.001433 0.001269 1.327827 -v -0.001269 0.001433 1.327827 -v -0.000679 -0.001790 1.327827 -v -0.001859 0.000458 1.440280 -v -0.000231 0.001900 1.440280 -v -0.000458 0.001858 1.440280 -v -0.000679 0.001790 1.440280 -v -0.001087 0.001575 1.440280 -v -0.000890 0.001695 1.440280 -v -0.001269 -0.001433 1.440280 -v -0.001907 0.000115 1.440280 -v -0.001900 0.000231 1.440280 -v -0.001433 -0.001270 1.440280 -v -0.001575 -0.001088 1.440280 -v -0.001695 -0.000890 1.440280 -v -0.001790 -0.000679 1.440280 -v -0.001859 -0.000458 1.440280 -v -0.001900 -0.000231 1.440280 -v 0.000000 0.001914 1.440280 -v -0.001907 -0.000116 1.440280 -v -0.001914 -0.000000 1.440280 -v 0.000000 -0.001914 1.440280 -v -0.000231 -0.001900 1.440280 -v -0.000458 -0.001859 1.440280 -v -0.000890 -0.001695 1.440280 -v -0.001087 -0.001576 1.440280 -v 0.000679 -0.001790 1.440280 -v 0.001269 0.001433 1.440280 -v 0.001433 0.001269 1.440280 -v 0.001575 0.001087 1.440280 -v 0.001695 0.000889 1.440280 -v 0.001790 0.000679 1.440280 -v 0.001859 0.000458 1.440280 -v 0.000231 0.001900 1.440280 -v 0.000458 0.001858 1.440280 -v 0.000679 0.001790 1.440280 -v 0.001087 0.001575 1.440280 -v 0.000890 0.001695 1.440280 -v 0.001269 -0.001433 1.440280 -v 0.001907 0.000115 1.440280 -v 0.001900 0.000231 1.440280 -v 0.001433 -0.001270 1.440280 -v 0.001575 -0.001088 1.440280 -v 0.001695 -0.000890 1.440280 -v -0.001695 0.000889 1.440280 -v 0.001790 -0.000679 1.440280 -v 0.001859 -0.000458 1.440280 -v 0.001900 -0.000231 1.440280 -v 0.001907 -0.000116 1.440280 -v 0.001914 -0.000000 1.440280 -v 0.000231 -0.001900 1.440280 -v 0.000458 -0.001859 1.440280 -v 0.000890 -0.001695 1.440280 -v 0.001087 -0.001576 1.440280 -v -0.001790 0.000679 1.440280 -v -0.001575 0.001087 1.440280 -v -0.001433 0.001269 1.440280 -v -0.001269 0.001433 1.440280 -v -0.000679 -0.001790 1.440280 -v -0.000528 0.000130 1.443106 -v -0.000066 0.000540 1.443106 -v -0.000130 0.000528 1.443106 -v -0.000193 0.000508 1.443106 -v -0.000309 0.000447 1.443106 -v -0.000253 0.000481 1.443106 -v -0.000361 -0.000407 1.443106 -v -0.000542 0.000033 1.443106 -v -0.000540 0.000065 1.443106 -v -0.000407 -0.000361 1.443106 -v -0.000448 -0.000309 1.443106 -v -0.000482 -0.000253 1.443106 -v -0.000509 -0.000193 1.443106 -v -0.000528 -0.000130 1.443106 -v -0.000540 -0.000066 1.443106 -v -0.000000 0.000544 1.443106 -v -0.000542 -0.000033 1.443106 -v -0.000544 -0.000000 1.443106 -v -0.000000 -0.000544 1.443106 -v -0.000066 -0.000540 1.443106 -v -0.000130 -0.000528 1.443106 -v -0.000253 -0.000482 1.443106 -v -0.000309 -0.000448 1.443106 -v 0.000193 -0.000509 1.443106 -v 0.000361 0.000407 1.443106 -v 0.000407 0.000361 1.443106 -v 0.000448 0.000309 1.443106 -v 0.000482 0.000253 1.443106 -v 0.000509 0.000193 1.443106 -v 0.000528 0.000130 1.443106 -v 0.000066 0.000540 1.443106 -v 0.000130 0.000528 1.443106 -v 0.000193 0.000508 1.443106 -v 0.000309 0.000447 1.443106 -v 0.000253 0.000481 1.443106 -v 0.000361 -0.000407 1.443106 -v 0.000542 0.000033 1.443106 -v 0.000540 0.000065 1.443106 -v 0.000407 -0.000361 1.443106 -v 0.000448 -0.000309 1.443106 -v 0.000482 -0.000253 1.443106 -v -0.000482 0.000253 1.443106 -v 0.000509 -0.000193 1.443106 -v 0.000528 -0.000130 1.443106 -v 0.000540 -0.000066 1.443106 -v 0.000542 -0.000033 1.443106 -v 0.000544 -0.000000 1.443106 -v 0.000066 -0.000540 1.443106 -v 0.000130 -0.000528 1.443106 -v 0.000253 -0.000482 1.443106 -v 0.000309 -0.000448 1.443106 -v -0.000509 0.000193 1.443106 -v -0.000448 0.000309 1.443106 -v -0.000407 0.000361 1.443106 -v -0.000361 0.000407 1.443106 -v -0.000193 -0.000509 1.443106 -v 0.000109 -0.000899 1.442750 -v 0.000158 -0.001300 1.442033 -v 0.000181 -0.001495 1.441641 -v 0.000214 -0.001763 1.440850 -v 0.000000 -0.001776 1.440850 -v -0.000000 -0.001506 1.441641 -v 0.000000 -0.001310 1.442033 -v 0.000000 -0.000905 1.442750 -v 0.000677 -0.000600 1.442750 -v 0.000980 -0.000869 1.442033 -v 0.001127 -0.000999 1.441641 -v 0.001329 -0.001178 1.440850 -v 0.001178 -0.001330 1.440850 -v 0.000999 -0.001127 1.441641 -v 0.000868 -0.000981 1.442033 -v 0.000600 -0.000678 1.442750 -v -0.000745 -0.000514 1.442750 -v -0.001078 -0.000744 1.442033 -v -0.001239 -0.000856 1.441641 -v -0.001462 -0.001009 1.440850 -v -0.001573 -0.000826 1.440850 -v -0.001333 -0.000700 1.441641 -v -0.001160 -0.000609 1.442033 -v -0.000801 -0.000421 1.442750 -v -0.000214 -0.001763 1.440850 -v -0.000181 -0.001495 1.441641 -v -0.000158 -0.001300 1.442033 -v -0.000109 -0.000899 1.442750 -v -0.000846 -0.000321 1.442750 -v -0.001225 -0.000465 1.442033 -v -0.001408 -0.000534 1.441641 -v -0.001661 -0.000630 1.440850 -v -0.001725 -0.000425 1.440850 -v -0.001462 -0.000361 1.441641 -v -0.001272 -0.000314 1.442034 -v -0.000879 -0.000217 1.442750 -v -0.001763 -0.000214 1.440850 -v -0.001495 -0.000182 1.441641 -v -0.001300 -0.000158 1.442033 -v -0.000899 -0.000109 1.442750 -v -0.000902 -0.000055 1.442750 -v -0.001305 -0.000079 1.442033 -v -0.001500 -0.000091 1.441641 -v -0.001770 -0.000107 1.440850 -v -0.001776 -0.000000 1.440850 -v -0.001506 -0.000000 1.441641 -v -0.001310 -0.000000 1.442033 -v -0.000905 -0.000000 1.442750 -v -0.000514 0.000745 1.442750 -v -0.000744 0.001078 1.442033 -v -0.000855 0.001239 1.441641 -v -0.001009 0.001462 1.440850 -v -0.000825 0.001573 1.440850 -v -0.000700 0.001333 1.441641 -v -0.000609 0.001160 1.442033 -v -0.000421 0.000801 1.442750 -v -0.000630 0.001661 1.440850 -v -0.000534 0.001408 1.441641 -v -0.000464 0.001224 1.442033 -v -0.000321 0.000846 1.442750 -v -0.000109 0.000898 1.442750 -v -0.000158 0.001300 1.442033 -v -0.000181 0.001495 1.441641 -v -0.000214 0.001763 1.440850 -v 0.000000 0.001776 1.440850 -v -0.000000 0.001506 1.441641 -v 0.000000 0.001310 1.442033 -v 0.000000 0.000905 1.442750 -v -0.001770 0.000107 1.440850 -v -0.001500 0.000091 1.441641 -v -0.001305 0.000079 1.442033 -v -0.000902 0.000054 1.442750 -v 0.000321 0.000846 1.442750 -v 0.000464 0.001224 1.442033 -v 0.000534 0.001408 1.441641 -v 0.000630 0.001661 1.440850 -v 0.000825 0.001573 1.440850 -v 0.000700 0.001333 1.441641 -v 0.000609 0.001160 1.442033 -v 0.000421 0.000801 1.442750 -v -0.000899 0.000109 1.442750 -v -0.001300 0.000158 1.442033 -v -0.001495 0.000181 1.441641 -v -0.001763 0.000214 1.440850 -v -0.001725 0.000425 1.440850 -v -0.001462 0.000360 1.441641 -v -0.001272 0.000313 1.442033 -v -0.000879 0.000216 1.442750 -v -0.000801 0.000420 1.442750 -v -0.001160 0.000608 1.442033 -v -0.001333 0.000700 1.441641 -v -0.001573 0.000825 1.440850 -v -0.001462 0.001009 1.440850 -v -0.001239 0.000855 1.441641 -v -0.001078 0.000744 1.442033 -v -0.000745 0.000514 1.442750 -v -0.000846 0.000321 1.442750 -v -0.001225 0.000464 1.442034 -v -0.001408 0.000534 1.441641 -v -0.001661 0.000630 1.440850 -v -0.000677 0.000600 1.442750 -v -0.000980 0.000868 1.442033 -v -0.001127 0.000998 1.441641 -v -0.001329 0.001178 1.440850 -v -0.001178 0.001329 1.440850 -v -0.000999 0.001127 1.441641 -v -0.000868 0.000980 1.442033 -v -0.000600 0.000677 1.442750 -v -0.000217 -0.000879 1.442750 -v -0.000313 -0.001272 1.442033 -v -0.000360 -0.001462 1.441641 -v -0.000425 -0.001725 1.440850 -v -0.000630 -0.001661 1.440850 -v -0.000534 -0.001408 1.441641 -v -0.000464 -0.001225 1.442033 -v -0.000321 -0.000846 1.442750 -v 0.000514 -0.000745 1.442750 -v 0.000744 -0.001078 1.442033 -v 0.000855 -0.001239 1.441641 -v 0.001009 -0.001462 1.440850 -v 0.000825 -0.001573 1.440850 -v 0.000700 -0.001334 1.441641 -v 0.000609 -0.001160 1.442033 -v 0.000421 -0.000802 1.442750 -v -0.000677 -0.000600 1.442750 -v -0.000980 -0.000869 1.442033 -v -0.001127 -0.000999 1.441641 -v -0.001329 -0.001178 1.440850 -v -0.000825 -0.001573 1.440850 -v -0.000700 -0.001334 1.441641 -v -0.000609 -0.001160 1.442033 -v -0.000421 -0.000802 1.442750 -v 0.000905 -0.000000 1.442750 -v 0.001310 -0.000000 1.442033 -v 0.001506 -0.000000 1.441641 -v 0.001776 -0.000000 1.440850 -v 0.001770 -0.000107 1.440850 -v 0.001500 -0.000091 1.441641 -v 0.001305 -0.000079 1.442033 -v 0.000902 -0.000055 1.442750 -v 0.000217 -0.000879 1.442750 -v 0.000313 -0.001272 1.442033 -v 0.000360 -0.001462 1.441641 -v 0.000425 -0.001725 1.440850 -v 0.000899 -0.000109 1.442750 -v 0.001300 -0.000158 1.442033 -v 0.001495 -0.000182 1.441641 -v 0.001763 -0.000214 1.440850 -v 0.001725 -0.000425 1.440850 -v 0.001462 -0.000361 1.441641 -v 0.001272 -0.000314 1.442033 -v 0.000879 -0.000217 1.442750 -v 0.000214 0.001763 1.440850 -v 0.000181 0.001495 1.441641 -v 0.000158 0.001300 1.442033 -v 0.000109 0.000898 1.442750 -v 0.000745 -0.000514 1.442750 -v 0.001078 -0.000744 1.442033 -v 0.001239 -0.000856 1.441641 -v 0.001462 -0.001009 1.440850 -v 0.000425 0.001724 1.440850 -v 0.000360 0.001462 1.441641 -v 0.000313 0.001272 1.442033 -v 0.000217 0.000879 1.442750 -v -0.000217 0.000879 1.442750 -v -0.000313 0.001272 1.442033 -v -0.000360 0.001462 1.441641 -v -0.000425 0.001724 1.440850 -v 0.001661 -0.000630 1.440850 -v 0.001408 -0.000534 1.441641 -v 0.001225 -0.000465 1.442033 -v 0.000846 -0.000321 1.442750 -v 0.000899 0.000109 1.442750 -v 0.001300 0.000158 1.442033 -v 0.001495 0.000181 1.441641 -v 0.001763 0.000214 1.440850 -v 0.001770 0.000107 1.440850 -v 0.001500 0.000091 1.441641 -v 0.001305 0.000079 1.442033 -v 0.000902 0.000054 1.442750 -v 0.000801 -0.000421 1.442750 -v 0.001160 -0.000609 1.442033 -v 0.001333 -0.000700 1.441641 -v 0.001573 -0.000826 1.440850 -v 0.000321 -0.000846 1.442750 -v 0.000464 -0.001225 1.442033 -v 0.000534 -0.001408 1.441641 -v 0.000630 -0.001661 1.440850 -v 0.000846 0.000321 1.442750 -v 0.001225 0.000464 1.442033 -v 0.001408 0.000534 1.441641 -v 0.001661 0.000630 1.440850 -v 0.001725 0.000425 1.440850 -v 0.001462 0.000360 1.441641 -v 0.001272 0.000313 1.442033 -v 0.000879 0.000216 1.442750 -v 0.000745 0.000514 1.442750 -v 0.001078 0.000744 1.442033 -v 0.001239 0.000855 1.441641 -v 0.001462 0.001009 1.440850 -v 0.001573 0.000825 1.440850 -v 0.001333 0.000700 1.441641 -v 0.001160 0.000608 1.442033 -v 0.000801 0.000420 1.442750 -v 0.000600 0.000677 1.442750 -v 0.000868 0.000980 1.442033 -v 0.000999 0.001127 1.441641 -v 0.001178 0.001329 1.440850 -v 0.001329 0.001178 1.440850 -v 0.001127 0.000998 1.441641 -v 0.000980 0.000868 1.442033 -v 0.000677 0.000600 1.442750 -v -0.001009 -0.001462 1.440850 -v -0.000855 -0.001239 1.441641 -v -0.000744 -0.001078 1.442033 -v -0.000514 -0.000745 1.442750 -v -0.000600 -0.000678 1.442750 -v -0.000868 -0.000981 1.442033 -v -0.000999 -0.001127 1.441641 -v -0.001178 -0.001330 1.440850 -v 0.001009 0.001462 1.440850 -v 0.000855 0.001239 1.441641 -v 0.000744 0.001078 1.442033 -v 0.000514 0.000745 1.442750 -vt 0.535001 0.670649 -vt 0.566053 0.671951 -vt 0.534949 0.671779 -vt 0.036513 0.532282 -vt 0.049670 0.515697 -vt 0.051040 0.516196 -vt 0.735405 0.379307 -vt 0.760541 0.382033 -vt 0.735405 0.382033 -vt 0.413155 0.890230 -vt 0.385821 0.891516 -vt 0.385878 0.887976 -vt 0.466188 0.074105 -vt 0.336415 0.070715 -vt 0.467317 0.070761 -vt 0.465008 0.077450 -vt 0.333571 0.074059 -vt 0.463775 0.080795 -vt 0.330597 0.077403 -vt 0.462487 0.084139 -vt 0.327487 0.080747 -vt 0.460932 0.087624 -vt 0.324243 0.084091 -vt 0.336415 0.071665 -vt 0.313519 0.172543 -vt 0.313696 0.071658 -vt 0.467324 0.050691 -vt 0.336423 0.047301 -vt 0.467325 0.047346 -vt 0.467322 0.054036 -vt 0.336422 0.050646 -vt 0.467321 0.057381 -vt 0.336421 0.053990 -vt 0.467320 0.060726 -vt 0.336420 0.057335 -vt 0.467319 0.064071 -vt 0.336419 0.060680 -vt 0.336416 0.067370 -vt 0.336417 0.064025 -vt 0.467318 0.067416 -vt 0.517852 0.920576 -vt 0.540223 0.914751 -vt 0.540564 0.917994 -vt 0.531718 0.943798 -vt 0.519783 0.941087 -vt 0.532845 0.939519 -vt 0.517363 0.913653 -vt 0.539617 0.908268 -vt 0.539908 0.911508 -vt 0.534539 0.935609 -vt 0.519257 0.934813 -vt 0.536696 0.931802 -vt 0.517095 0.906858 -vt 0.539088 0.901801 -vt 0.539346 0.905032 -vt 0.518156 0.924081 -vt 0.540937 0.921236 -vt 0.539007 0.928094 -vt 0.518502 0.927700 -vt 0.541327 0.924467 -vt 0.517584 0.917101 -vt 0.519599 0.938120 -vt 0.517197 0.910237 -vt 0.518872 0.931310 -vt 0.328893 0.586479 -vt 0.330800 0.507286 -vt 0.357028 0.501915 -vt 0.132900 0.553284 -vt 0.098430 0.532793 -vt 0.136072 0.545777 -vt 0.489226 0.922210 -vt 0.489101 0.918250 -vt 0.489344 0.926303 -vt 0.489444 0.930358 -vt 0.412926 0.940165 -vt 0.385843 0.943800 -vt 0.385842 0.939977 -vt 0.489567 0.937833 -vt 0.489519 0.934246 -vt 0.092061 0.071583 -vt 0.074432 0.076035 -vt 0.073210 0.065406 -vt 0.456601 0.940579 -vt 0.445343 0.943799 -vt 0.445340 0.940460 -vt 0.296343 0.934640 -vt 0.277798 0.929813 -vt 0.296350 0.929529 -vt 0.296339 0.939360 -vt 0.277781 0.934772 -vt 0.296337 0.943802 -vt 0.277771 0.939405 -vt 0.738661 0.756795 -vt 0.719209 0.753740 -vt 0.738647 0.753489 -vt 0.810365 0.756260 -vt 0.791858 0.761059 -vt 0.791842 0.756116 -vt 0.738704 0.763483 -vt 0.719137 0.766269 -vt 0.719166 0.763278 -vt 0.769172 0.747110 -vt 0.761654 0.750999 -vt 0.761647 0.747111 -vt 0.223943 0.909273 -vt 0.203870 0.909003 -vt 0.223649 0.906765 -vt 0.277228 0.579738 -vt 0.259781 0.529001 -vt 0.297600 0.517436 -vt 0.296259 0.895056 -vt 0.277598 0.893704 -vt 0.296173 0.891584 -vt 0.769253 0.791775 -vt 0.760732 0.791782 -vt 0.761240 0.789189 -vt 0.296318 0.898999 -vt 0.277762 0.897008 -vt 0.769451 0.788790 -vt 0.761580 0.786345 -vt 0.296354 0.903408 -vt 0.277854 0.900746 -vt 0.769537 0.785462 -vt 0.761786 0.783202 -vt 0.296371 0.908227 -vt 0.277894 0.904920 -vt 0.769546 0.781785 -vt 0.761885 0.779747 -vt 0.296372 0.913362 -vt 0.277898 0.909483 -vt 0.769504 0.777787 -vt 0.761907 0.776002 -vt 0.296368 0.918737 -vt 0.277878 0.914353 -vt 0.769434 0.773524 -vt 0.761878 0.772014 -vt 0.277333 0.890773 -vt 0.296052 0.888521 -vt 0.277823 0.924667 -vt 0.296359 0.924180 -vt 0.810372 0.761366 -vt 0.791878 0.766186 -vt 0.810383 0.772157 -vt 0.791910 0.776459 -vt 0.791898 0.771368 -vt 0.157196 0.932707 -vt 0.109373 0.932409 -vt 0.157184 0.930000 -vt 0.663856 0.752565 -vt 0.624670 0.753856 -vt 0.624705 0.751604 -vt 0.152379 0.935564 -vt 0.109434 0.934677 -vt 0.667433 0.755382 -vt 0.624619 0.756113 -vt 0.148692 0.938368 -vt 0.109480 0.936941 -vt 0.672201 0.758261 -vt 0.624552 0.758377 -vt 0.146018 0.941096 -vt 0.109510 0.939202 -vt 0.661217 0.749806 -vt 0.624725 0.749357 -vt 0.144886 0.943763 -vt 0.109525 0.941459 -vt 0.660090 0.747112 -vt 0.624732 0.747112 -vt 0.154590 0.911599 -vt 0.108382 0.916341 -vt 0.108266 0.915180 -vt 0.669566 0.779249 -vt 0.623278 0.776711 -vt 0.623397 0.775553 -vt 0.156824 0.914951 -vt 0.156689 0.912606 -vt 0.671795 0.775916 -vt 0.623517 0.774396 -vt 0.623733 0.772088 -vt 0.156933 0.917327 -vt 0.108592 0.918657 -vt 0.671907 0.773552 -vt 0.623925 0.769786 -vt 0.157019 0.919748 -vt 0.108777 0.920965 -vt 0.671996 0.771144 -vt 0.624094 0.767491 -vt 0.157084 0.922222 -vt 0.108939 0.923268 -vt 0.672065 0.768684 -vt 0.624239 0.765203 -vt 0.157131 0.924754 -vt 0.109078 0.925563 -vt 0.672117 0.766166 -vt 0.624364 0.762921 -vt 0.157164 0.927348 -vt 0.109196 0.927851 -vt 0.672156 0.763588 -vt 0.624468 0.760646 -vt 0.109294 0.930133 -vt 0.672183 0.760951 -vt 0.037915 0.940057 -vt 0.014439 0.941067 -vt 0.037824 0.938877 -vt 0.553561 0.750627 -vt 0.530307 0.749583 -vt 0.530363 0.748966 -vt 0.037562 0.936522 -vt 0.014368 0.940443 -vt 0.014281 0.939820 -vt 0.553666 0.748284 -vt 0.530403 0.748348 -vt 0.530426 0.747730 -vt 0.602329 0.755218 -vt 0.087180 0.939609 -vt 0.602086 0.759282 -vt 0.602220 0.757249 -vt 0.585079 0.748896 -vt 0.571154 0.750191 -vt 0.571198 0.748652 -vt 0.530434 0.747112 -vt 0.553679 0.747112 -vt 0.571213 0.747112 -vt 0.585093 0.747112 -vt 0.036433 0.930683 -vt 0.013458 0.936088 -vt 0.036124 0.929527 -vt 0.582844 0.769530 -vt 0.568667 0.767097 -vt 0.568859 0.766330 -vt 0.551602 0.761630 -vt 0.529108 0.755208 -vt 0.529220 0.754862 -vt 0.583359 0.766815 -vt 0.569050 0.765565 -vt 0.569401 0.764031 -vt 0.552356 0.758767 -vt 0.529496 0.753897 -vt 0.529653 0.753282 -vt 0.569719 0.762496 -vt 0.583663 0.765011 -vt 0.552609 0.757613 -vt 0.529798 0.752665 -vt 0.570006 0.760959 -vt 0.583936 0.763211 -vt 0.529929 0.752049 -vt 0.552834 0.756455 -vt 0.570261 0.759423 -vt 0.584180 0.761414 -vt 0.553033 0.755295 -vt 0.530046 0.751434 -vt 0.584395 0.759620 -vt 0.570486 0.757885 -vt 0.530148 0.750817 -vt 0.553205 0.754131 -vt 0.570680 0.756347 -vt 0.584581 0.757829 -vt 0.069350 0.934666 -vt 0.055189 0.934323 -vt 0.069197 0.932865 -vt 0.087223 0.943682 -vt 0.087213 0.941646 -vt 0.087123 0.937572 -vt 0.087043 0.935533 -vt 0.085790 0.921178 -vt 0.085511 0.919111 -vt 0.584737 0.756040 -vt 0.570843 0.754809 -vt 0.553350 0.752965 -vt 0.530235 0.750200 -vt 0.602413 0.753190 -vt 0.086808 0.931448 -vt 0.054997 0.932772 -vt 0.069016 0.931061 -vt 0.014179 0.939197 -vt 0.037391 0.935347 -vt 0.086654 0.929401 -vt 0.601745 0.763357 -vt 0.601928 0.761318 -vt 0.054774 0.931221 -vt 0.068805 0.929255 -vt 0.014061 0.938576 -vt 0.037192 0.934176 -vt 0.086476 0.927351 -vt 0.601536 0.765400 -vt 0.068565 0.927445 -vt 0.054521 0.929671 -vt 0.036967 0.933008 -vt 0.013929 0.937953 -vt 0.086272 0.925298 -vt 0.054236 0.928122 -vt 0.068296 0.925632 -vt 0.013784 0.937331 -vt 0.036714 0.931843 -vt 0.086044 0.923240 -vt 0.601043 0.769499 -vt 0.601302 0.767447 -vt 0.067997 0.923814 -vt 0.053920 0.926573 -vt 0.013627 0.936710 -vt 0.067489 0.921080 -vt 0.053571 0.925025 -vt 0.053381 0.924253 -vt 0.085358 0.918076 -vt 0.552076 0.759916 -vt 0.529326 0.754515 -vt 0.600446 0.773614 -vt 0.600602 0.772584 -vt 0.035958 0.928951 -vt 0.013352 0.935737 -vt 0.067668 0.921992 -vt 0.602520 0.747112 -vt 0.069676 0.941858 -vt 0.055709 0.943631 -vt 0.055697 0.942080 -vt 0.038018 0.942420 -vt 0.014565 0.943563 -vt 0.014558 0.942939 -vt 0.602508 0.749137 -vt 0.069637 0.940062 -vt 0.055655 0.940528 -vt 0.014535 0.942315 -vt 0.037980 0.941238 -vt 0.584865 0.754252 -vt 0.570977 0.753270 -vt 0.553469 0.751797 -vt 0.055583 0.938977 -vt 0.069570 0.938264 -vt 0.014495 0.941691 -vt 0.584965 0.752466 -vt 0.585036 0.750681 -vt 0.602473 0.751163 -vt 0.055482 0.937425 -vt 0.055350 0.935874 -vt 0.086937 0.933492 -vt 0.553627 0.749456 -vt 0.571080 0.751731 -vt 0.037706 0.937698 -vt 0.069474 0.936466 -vt 0.583025 0.768624 -vt 0.600757 0.771555 -vt 0.551768 0.761061 -vt 0.067309 0.920164 -vt 0.035794 0.928375 -vt 0.069687 0.943654 -vt 0.038029 0.943602 -vt 0.341088 0.914003 -vt 0.341083 0.908760 -vt 0.341070 0.903797 -vt 0.341050 0.899211 -vt 0.341022 0.895066 -vt 0.340990 0.891368 -vt 0.340956 0.888057 -vt 0.305337 0.584287 -vt 0.050710 0.061639 -vt 0.044078 0.076024 -vt 0.042653 0.059585 -vt 0.341091 0.939665 -vt 0.341091 0.935187 -vt 0.341092 0.930215 -vt 0.341093 0.924918 -vt 0.341092 0.919455 -vt 0.769239 0.759883 -vt 0.761773 0.763524 -vt 0.761720 0.759231 -vt 0.738681 0.760139 -vt 0.719200 0.756996 -vt 0.769179 0.751184 -vt 0.761678 0.755024 -vt 0.810360 0.751546 -vt 0.791833 0.751496 -vt 0.738639 0.750268 -vt 0.719216 0.747111 -vt 0.738636 0.747111 -vt 0.769294 0.764457 -vt 0.761828 0.767817 -vt 0.810380 0.766713 -vt 0.255184 0.921783 -vt 0.247632 0.918805 -vt 0.255251 0.917267 -vt 0.224209 0.927452 -vt 0.204470 0.924670 -vt 0.224230 0.924127 -vt 0.810377 0.777538 -vt 0.791911 0.781304 -vt 0.247654 0.914779 -vt 0.255319 0.912970 -vt 0.204427 0.921772 -vt 0.224247 0.920896 -vt 0.738723 0.766784 -vt 0.719096 0.769145 -vt 0.810357 0.782683 -vt 0.791883 0.785840 -vt 0.247627 0.910996 -vt 0.255363 0.908936 -vt 0.204367 0.918997 -vt 0.224247 0.917771 -vt 0.738742 0.769986 -vt 0.719038 0.771899 -vt 0.810308 0.787514 -vt 0.791815 0.789984 -vt 0.247523 0.907505 -vt 0.255358 0.905223 -vt 0.204286 0.916344 -vt 0.224213 0.914781 -vt 0.738745 0.773083 -vt 0.718959 0.774532 -vt 0.810225 0.791935 -vt 0.791692 0.793689 -vt 0.247314 0.904327 -vt 0.255277 0.901861 -vt 0.204179 0.913806 -vt 0.224122 0.911944 -vt 0.738716 0.776046 -vt 0.718854 0.777051 -vt 0.810100 0.795883 -vt 0.791498 0.796957 -vt 0.246969 0.901449 -vt 0.255083 0.898841 -vt 0.204041 0.911366 -vt 0.738630 0.778855 -vt 0.718721 0.779473 -vt 0.809923 0.799351 -vt 0.791206 0.799849 -vt 0.529378 0.045695 -vt 0.521465 0.044020 -vt 0.529379 0.044023 -vt 0.461178 0.609232 -vt 0.443456 0.475645 -vt 0.738460 0.781501 -vt 0.718555 0.781821 -vt 0.027653 0.053310 -vt 0.034670 0.076023 -vt 0.013908 0.051946 -vt 0.242245 0.071634 -vt 0.209678 0.098693 -vt 0.209638 0.071623 -vt 0.246454 0.898824 -vt 0.254726 0.896111 -vt 0.076867 0.536173 -vt 0.061051 0.519817 -vt 0.081359 0.526947 -vt 0.810358 0.747110 -vt 0.791829 0.747110 -vt 0.719185 0.760181 -vt 0.769361 0.769041 -vt 0.255056 0.943807 -vt 0.247534 0.939928 -vt 0.255057 0.939724 -vt 0.719214 0.750438 -vt 0.769201 0.755422 -vt 0.247533 0.935904 -vt 0.255067 0.935473 -vt 0.783561 0.808801 -vt 0.789588 0.812618 -vt 0.781232 0.812510 -vt 0.247542 0.931684 -vt 0.255090 0.930994 -vt 0.764554 0.468857 -vt 0.762532 0.464723 -vt 0.763867 0.464344 -vt 0.255129 0.926396 -vt 0.247594 0.923040 -vt 0.277851 0.919466 -vt 0.224181 0.930814 -vt 0.204499 0.927686 -vt 0.247564 0.927365 -vt 0.753644 0.758410 -vt 0.750245 0.761876 -vt 0.756305 0.754684 -vt 0.746708 0.768600 -vt 0.232296 0.922302 -vt 0.232242 0.925941 -vt 0.746760 0.772049 -vt 0.232346 0.918811 -vt 0.746782 0.775336 -vt 0.232364 0.915486 -vt 0.746746 0.778428 -vt 0.232323 0.912360 -vt 0.746615 0.781307 -vt 0.232185 0.909450 -vt 0.746348 0.783972 -vt 0.231909 0.906755 -vt 0.768893 0.794471 -vt 0.745898 0.786453 -vt 0.231448 0.904247 -vt 0.285629 0.152708 -vt 0.285981 0.071648 -vt 0.253615 0.071637 -vt 0.242356 0.121933 -vt 0.758013 0.747111 -vt 0.757562 0.750876 -vt 0.746655 0.765009 -vt 0.277768 0.943803 -vt 0.243462 0.940578 -vt 0.247542 0.943810 -vt 0.243937 0.943814 -vt 0.242145 0.937286 -vt 0.239396 0.934060 -vt 0.235833 0.931046 -vt 0.489597 0.943799 -vt 0.489590 0.940971 -vt 0.456590 0.937018 -vt 0.445332 0.936765 -vt 0.412921 0.936144 -vt 0.385840 0.935749 -vt 0.456569 0.932960 -vt 0.445316 0.932552 -vt 0.412912 0.931559 -vt 0.385837 0.930928 -vt 0.031126 0.532555 -vt 0.045108 0.514036 -vt 0.456537 0.928561 -vt 0.445292 0.927983 -vt 0.412898 0.926585 -vt 0.385832 0.925698 -vt 0.456495 0.923968 -vt 0.445259 0.923212 -vt 0.412880 0.921392 -vt 0.385824 0.920242 -vt 0.488990 0.914389 -vt 0.456449 0.919334 -vt 0.445222 0.918402 -vt 0.412858 0.916160 -vt 0.385815 0.914753 -vt 0.456400 0.914848 -vt 0.445183 0.913746 -vt 0.412835 0.911098 -vt 0.385804 0.909447 -vt 0.456371 0.910522 -vt 0.445158 0.909270 -vt 0.412822 0.906260 -vt 0.385793 0.904397 -vt 0.456383 0.906411 -vt 0.445161 0.905038 -vt 0.412832 0.901730 -vt 0.385788 0.899696 -vt 0.488917 0.910650 -vt 0.456456 0.902545 -vt 0.445211 0.901083 -vt 0.412879 0.897557 -vt 0.385794 0.895401 -vt 0.488908 0.907046 -vt 0.456614 0.898917 -vt 0.445332 0.897403 -vt 0.412980 0.893743 -vt 0.488994 0.903571 -vt 0.182157 0.076071 -vt 0.182158 0.071613 -vt 0.253859 0.130113 -vt 0.041162 0.076024 -vt 0.032749 0.055441 -vt 0.456878 0.895486 -vt 0.445549 0.893949 -vt 0.456604 0.943799 -vt 0.412927 0.943800 -vt 0.199761 0.567598 -vt 0.173655 0.558326 -vt 0.207184 0.545136 -vt 0.137721 0.076056 -vt 0.137110 0.071598 -vt 0.489203 0.900196 -vt 0.055023 0.532488 -vt 0.053702 0.517163 -vt 0.052135 0.076027 -vt 0.517062 0.903528 -vt 0.759063 0.004538 -vt 0.761308 0.001609 -vt 0.761930 0.003315 -vt 0.764550 0.000736 -vt 0.764950 0.002545 -vt 0.767889 0.000376 -vt 0.768053 0.002255 -vt 0.771246 0.000543 -vt 0.771167 0.002457 -vt 0.774689 0.001149 -vt 0.774278 0.003082 -vt 0.747873 0.025190 -vt 0.746245 0.023622 -vt 0.747879 0.023634 -vt 0.748288 0.019003 -vt 0.746245 0.021941 -vt 0.746695 0.018624 -vt 0.749136 0.016017 -vt 0.747604 0.015402 -vt 0.750400 0.013184 -vt 0.748960 0.012343 -vt 0.752059 0.010565 -vt 0.750738 0.009511 -vt 0.754082 0.008218 -vt 0.752906 0.006969 -vt 0.756431 0.006198 -vt 0.755422 0.004772 -vt 0.758240 0.002967 -vt 0.761988 0.043978 -vt 0.764611 0.046535 -vt 0.761394 0.045647 -vt 0.764991 0.044766 -vt 0.767929 0.046923 -vt 0.768075 0.045085 -vt 0.771268 0.046794 -vt 0.771172 0.044919 -vt 0.774548 0.046144 -vt 0.774207 0.044267 -vt 0.777850 0.045049 -vt 0.748323 0.028268 -vt 0.746490 0.026965 -vt 0.748108 0.026730 -vt 0.749191 0.031251 -vt 0.746735 0.028628 -vt 0.750468 0.034080 -vt 0.747664 0.031845 -vt 0.752135 0.036698 -vt 0.749035 0.034900 -vt 0.754161 0.039046 -vt 0.750823 0.037730 -vt 0.756510 0.041071 -vt 0.752997 0.040273 -vt 0.759137 0.042735 -vt 0.755515 0.042474 -vt 0.758335 0.044289 -vt 0.777178 0.043199 -vt 0.780240 0.042101 -vt 0.777496 0.003733 -vt 0.776852 0.005249 -vt 0.780328 0.006348 -vt 0.779470 0.007543 -vt 0.782052 0.009893 -vt 0.783174 0.008943 -vt 0.779398 0.040693 -vt 0.782642 0.039119 -vt 0.749142 0.656786 -vt 0.833715 0.653811 -vt 0.833297 0.656877 -vt 0.749145 0.658493 -vt 0.723228 0.656861 -vt 0.833716 0.663169 -vt 0.749142 0.660200 -vt 0.833297 0.660104 -vt 0.723228 0.660127 -vt 0.597633 0.656825 -vt 0.558885 0.658496 -vt 0.558887 0.656670 -vt 0.650752 0.658496 -vt 0.636750 0.656848 -vt 0.650750 0.656845 -vt 0.086186 0.510624 -vt 0.105936 0.517816 -vt 0.121647 0.093968 -vt 0.093285 0.076041 -vt 0.566060 0.670845 -vt 0.592557 0.672118 -vt 0.078956 0.507974 -vt 0.062460 0.093950 -vt 0.566067 0.669749 -vt 0.592714 0.666257 -vt 0.592574 0.669894 -vt 0.073435 0.093953 -vt 0.095733 0.093960 -vt 0.128099 0.525754 -vt 0.065376 0.093950 -vt 0.039662 0.076024 -vt 0.055968 0.093949 -vt 0.720917 0.077873 -vt 0.734944 0.079351 -vt 0.720928 0.079419 -vt 0.723227 0.658494 -vt 0.689418 0.656846 -vt 0.648850 0.664524 -vt 0.636750 0.660145 -vt 0.650750 0.660147 -vt 0.721544 0.664526 -vt 0.689419 0.660144 -vt 0.595660 0.664296 -vt 0.558887 0.660322 -vt 0.597633 0.660167 -vt 0.687521 0.652465 -vt 0.634842 0.652471 -vt 0.689416 0.658495 -vt 0.636749 0.658496 -vt 0.094784 0.540531 -vt 0.244505 0.574156 -vt 0.246092 0.533194 -vt 0.232878 0.572602 -vt 0.534964 0.669517 -vt 0.565794 0.666213 -vt 0.559012 0.664388 -vt 0.520285 0.660148 -vt 0.520285 0.656844 -vt 0.341091 0.943801 -vt 0.170914 0.566415 -vt 0.883939 0.663479 -vt 0.885442 0.660151 -vt 0.883939 0.653498 -vt 0.885442 0.656826 -vt 0.491573 0.491658 -vt 0.511278 0.625020 -vt 0.466441 0.071709 -vt 0.336377 0.185738 -vt 0.735405 0.425642 -vt 0.760541 0.428368 -vt 0.735405 0.428368 -vt 0.745492 0.018869 -vt 0.713518 0.016558 -vt 0.745492 0.016558 -vt 0.735405 0.401112 -vt 0.760541 0.403837 -vt 0.735405 0.403837 -vt 0.735405 0.376581 -vt 0.760541 0.379307 -vt 0.735405 0.406563 -vt 0.760541 0.406563 -vt 0.735405 0.373856 -vt 0.760541 0.376581 -vt 0.735405 0.346600 -vt 0.760541 0.349325 -vt 0.735405 0.349325 -vt 0.735405 0.409289 -vt 0.760541 0.409288 -vt 0.735405 0.371130 -vt 0.760541 0.373856 -vt 0.760541 0.412014 -vt 0.735405 0.412014 -vt 0.735405 0.368405 -vt 0.760541 0.371130 -vt 0.735405 0.414740 -vt 0.760541 0.414740 -vt 0.519023 0.070779 -vt 0.519024 0.067434 -vt 0.519026 0.064089 -vt 0.519027 0.060744 -vt 0.519028 0.057399 -vt 0.519029 0.054054 -vt 0.519030 0.050709 -vt 0.519031 0.047364 -vt 0.519017 0.087644 -vt 0.519019 0.084158 -vt 0.519020 0.080814 -vt 0.519021 0.077469 -vt 0.519022 0.074124 -vt 0.735405 0.354777 -vt 0.760541 0.357502 -vt 0.735405 0.357502 -vt 0.735405 0.365679 -vt 0.760541 0.368405 -vt 0.735405 0.352051 -vt 0.760541 0.354777 -vt 0.735405 0.417465 -vt 0.760541 0.417465 -vt 0.735405 0.362953 -vt 0.760541 0.365679 -vt 0.760541 0.352051 -vt 0.735405 0.420191 -vt 0.760541 0.420191 -vt 0.735405 0.360228 -vt 0.760541 0.362953 -vt 0.760541 0.422916 -vt 0.735405 0.422917 -vt 0.760541 0.360228 -vt 0.760541 0.431093 -vt 0.735405 0.431093 -vt 0.760541 0.425642 -vt 0.735405 0.390209 -vt 0.760541 0.391572 -vt 0.735405 0.391572 -vt 0.519040 0.020604 -vt 0.466460 0.017242 -vt 0.519041 0.017259 -vt 0.466458 0.023932 -vt 0.519039 0.023949 -vt 0.466456 0.027277 -vt 0.519038 0.027294 -vt 0.466455 0.030621 -vt 0.519037 0.030639 -vt 0.466454 0.033966 -vt 0.519036 0.033984 -vt 0.466453 0.037311 -vt 0.519035 0.037329 -vt 0.466452 0.040656 -vt 0.519034 0.040674 -vt 0.466464 0.003862 -vt 0.519047 0.000394 -vt 0.519046 0.003880 -vt 0.466463 0.007207 -vt 0.519045 0.007225 -vt 0.466462 0.010552 -vt 0.519044 0.010569 -vt 0.466461 0.013897 -vt 0.519043 0.013914 -vt 0.489294 0.691079 -vt 0.169631 0.569950 -vt 0.521259 0.669438 -vt 0.534927 0.666178 -vt 0.227081 0.590040 -vt 0.237824 0.594227 -vt 0.093203 0.543947 -vt 0.072672 0.060725 -vt 0.050083 0.055302 -vt 0.052384 0.538103 -vt 0.046969 0.531741 -vt 0.196181 0.578498 -vt 0.042025 0.052345 -vt 0.029043 0.046376 -vt 0.022951 0.540009 -vt 0.018034 0.529254 -vt 0.597185 0.808192 -vt 0.719151 0.810324 -vt 0.597177 0.810063 -vt 0.526432 0.806291 -vt 0.597722 0.803632 -vt 0.597187 0.806320 -vt 0.074870 0.540312 -vt 0.022364 0.043306 -vt 0.004764 0.041342 -vt 0.439459 0.674494 -vt 0.519768 0.813025 -vt 0.516574 0.809868 -vt 0.519768 0.809871 -vt 0.294086 0.618089 -vt 0.268177 0.606931 -vt 0.091524 0.062894 -vt 0.131514 0.556586 -vt 0.313544 0.632588 -vt 0.030111 0.539393 -vt 0.521317 0.670560 -vt 0.521245 0.671681 -vt 0.519030 0.050054 -vt 0.466445 0.060352 -vt 0.717557 0.803140 -vt 0.719161 0.805921 -vt 0.529389 0.013918 -vt 0.529388 0.017263 -vt 0.529390 0.010573 -vt 0.529391 0.007228 -vt 0.529392 0.003883 -vt 0.529394 0.000397 -vt 0.529381 0.037332 -vt 0.529380 0.040677 -vt 0.529382 0.033988 -vt 0.529383 0.030643 -vt 0.529385 0.027298 -vt 0.529386 0.023953 -vt 0.529387 0.020608 -vt 0.529369 0.074127 -vt 0.529370 0.070782 -vt 0.529367 0.077472 -vt 0.529366 0.080817 -vt 0.529365 0.084162 -vt 0.529377 0.050713 -vt 0.529378 0.047368 -vt 0.529375 0.054058 -vt 0.529374 0.057403 -vt 0.529373 0.060747 -vt 0.529372 0.064092 -vt 0.529371 0.067437 -vt 0.735405 0.398386 -vt 0.760541 0.401112 -vt 0.760541 0.384758 -vt 0.735405 0.384758 -vt 0.735405 0.395661 -vt 0.760541 0.398386 -vt 0.760541 0.387484 -vt 0.735405 0.387484 -vt 0.760541 0.392935 -vt 0.760541 0.395661 -vt 0.760541 0.388847 -vt 0.735405 0.388847 -vt 0.521466 0.042347 -vt 0.529380 0.042350 -vt 0.459021 0.237256 -vt 0.409027 0.237240 -vt 0.090978 0.497699 -vt 0.116654 0.488494 -vt 0.154179 0.093979 -vt 0.121627 0.152561 -vt 0.081437 0.501285 -vt 0.062459 0.099016 -vt 0.073430 0.108493 -vt 0.095721 0.127668 -vt 0.146674 0.475646 -vt 0.065375 0.101396 -vt 0.060959 0.093950 -vt 0.058219 0.095427 -vt 0.155610 0.535886 -vt 0.174304 0.486023 -vt 0.074973 0.506507 -vt 0.072990 0.504258 -vt 0.076258 0.503042 -vt 0.734958 0.077960 -vt 0.799395 0.079715 -vt 0.076328 0.507006 -vt 0.720929 0.076474 -vt 0.736459 0.073644 -vt 0.734960 0.076568 -vt 0.070457 0.504843 -vt 0.615401 0.671082 -vt 0.604653 0.669782 -vt 0.615400 0.669804 -vt 0.718384 0.671377 -vt 0.678619 0.669877 -vt 0.718384 0.669506 -vt 0.718373 0.673249 -vt 0.679891 0.676082 -vt 0.678611 0.672650 -vt 0.615309 0.676089 -vt 0.604645 0.672319 -vt 0.615392 0.672360 -vt 0.644772 0.672490 -vt 0.678619 0.671264 -vt 0.644780 0.669843 -vt 0.598937 0.675934 -vt 0.595262 0.672198 -vt 0.598959 0.672232 -vt 0.598967 0.671033 -vt 0.595264 0.669842 -vt 0.598966 0.669834 -vt 0.644656 0.666100 -vt 0.600893 0.666106 -vt 0.600891 0.669815 -vt 0.600884 0.672263 -vt 0.604644 0.671051 -vt 0.795988 0.073349 -vt 0.799403 0.076419 -vt 0.078020 0.502442 -vt 0.592572 0.671016 -vt 0.763257 0.180251 -vt 0.760238 0.179939 -vt 0.762891 0.178986 -vt 0.778618 0.182213 -vt 0.781731 0.182675 -vt 0.780877 0.183782 -vt 0.775536 0.215315 -vt 0.773530 0.217342 -vt 0.773200 0.216154 -vt 0.776181 0.180993 -vt 0.779311 0.181022 -vt 0.773634 0.180132 -vt 0.776698 0.179730 -vt 0.770969 0.217873 -vt 0.770791 0.216644 -vt 0.756542 0.212646 -vt 0.757952 0.215222 -vt 0.755733 0.213642 -vt 0.753723 0.211796 -vt 0.754662 0.210905 -vt 0.751972 0.209661 -vt 0.753038 0.208908 -vt 0.751710 0.206729 -vt 0.750569 0.207309 -vt 0.750707 0.204420 -vt 0.749522 0.204837 -vt 0.749690 0.199565 -vt 0.748805 0.202275 -vt 0.748454 0.199653 -vt 0.748445 0.198334 -vt 0.749692 0.198329 -vt 0.768346 0.218082 -vt 0.768332 0.216827 -vt 0.765668 0.217932 -vt 0.765829 0.216665 -vt 0.762989 0.217404 -vt 0.763328 0.216157 -vt 0.760391 0.216489 -vt 0.760902 0.215297 -vt 0.758628 0.214110 -vt 0.760784 0.181158 -vt 0.757760 0.181284 -vt 0.758467 0.182397 -vt 0.755533 0.182930 -vt 0.756372 0.183921 -vt 0.753575 0.184824 -vt 0.754522 0.185687 -vt 0.751869 0.186949 -vt 0.751626 0.189882 -vt 0.752938 0.187686 -vt 0.750039 0.202019 -vt 0.750646 0.192223 -vt 0.750474 0.189311 -vt 0.749998 0.194636 -vt 0.749443 0.191821 -vt 0.749677 0.197092 -vt 0.748607 0.195707 -vt 0.749846 0.195866 -vt 0.771037 0.179636 -vt 0.773968 0.178829 -vt 0.768401 0.178166 -vt 0.771193 0.178316 -vt 0.768423 0.179485 -vt 0.765617 0.178390 -vt 0.765816 0.179693 -vt 0.751317 0.094436 -vt 0.771293 0.103028 -vt 0.751317 0.096736 -vt 0.745492 0.046609 -vt 0.713518 0.048921 -vt 0.713518 0.046609 -vt 0.745492 0.021181 -vt 0.713518 0.018869 -vt 0.713518 0.044297 -vt 0.745492 0.044297 -vt 0.745492 0.023492 -vt 0.713518 0.021181 -vt 0.713518 0.041986 -vt 0.745492 0.041986 -vt 0.713518 0.025804 -vt 0.713518 0.023493 -vt 0.745492 0.030427 -vt 0.713518 0.028116 -vt 0.745492 0.028116 -vt 0.745492 0.025804 -vt 0.713518 0.039674 -vt 0.745492 0.039674 -vt 0.745492 0.032739 -vt 0.713518 0.030428 -vt 0.713518 0.037363 -vt 0.745492 0.037362 -vt 0.745492 0.035051 -vt 0.713518 0.033895 -vt 0.745492 0.033895 -vt 0.713518 0.036207 -vt 0.745492 0.036206 -vt 0.745492 0.007311 -vt 0.713518 0.005000 -vt 0.745492 0.004999 -vt 0.745492 0.055855 -vt 0.713518 0.053544 -vt 0.745492 0.053544 -vt 0.745493 0.065102 -vt 0.713518 0.062790 -vt 0.745493 0.062790 -vt 0.745492 0.009623 -vt 0.713518 0.007311 -vt 0.745492 0.072037 -vt 0.713518 0.069725 -vt 0.745492 0.069725 -vt 0.713518 0.060479 -vt 0.745492 0.060479 -vt 0.745492 0.011934 -vt 0.713518 0.009623 -vt 0.745492 0.002688 -vt 0.713518 0.000376 -vt 0.745492 0.000376 -vt 0.713518 0.058167 -vt 0.745492 0.058167 -vt 0.745492 0.014246 -vt 0.713518 0.011934 -vt 0.745492 0.067414 -vt 0.713518 0.067414 -vt 0.713518 0.055855 -vt 0.713518 0.014246 -vt 0.713518 0.065102 -vt 0.713518 0.051232 -vt 0.745492 0.051232 -vt 0.713518 0.002688 -vt 0.745492 0.048920 -vt 0.763821 0.182180 -vt 0.765917 0.180380 -vt 0.766107 0.181679 -vt 0.768430 0.180179 -vt 0.768440 0.181493 -vt 0.770778 0.181631 -vt 0.770951 0.180319 -vt 0.773452 0.180816 -vt 0.773095 0.182108 -vt 0.751584 0.197211 -vt 0.750489 0.195949 -vt 0.751722 0.196109 -vt 0.750336 0.197133 -vt 0.751868 0.195010 -vt 0.751278 0.192440 -vt 0.752469 0.192860 -vt 0.752238 0.190192 -vt 0.753375 0.190774 -vt 0.752508 0.203774 -vt 0.750683 0.201885 -vt 0.751903 0.201631 -vt 0.751335 0.204197 -vt 0.754550 0.188803 -vt 0.753495 0.188071 -vt 0.755015 0.186138 -vt 0.755971 0.187011 -vt 0.757627 0.185435 -vt 0.756809 0.184445 -vt 0.758834 0.182985 -vt 0.759517 0.184102 -vt 0.761073 0.181803 -vt 0.761613 0.183012 -vt 0.761687 0.213480 -vt 0.758980 0.213531 -vt 0.759640 0.212440 -vt 0.761174 0.214672 -vt 0.763866 0.214255 -vt 0.766102 0.214743 -vt 0.763513 0.215492 -vt 0.768339 0.214921 -vt 0.765919 0.216000 -vt 0.770535 0.214790 -vt 0.768330 0.216168 -vt 0.751593 0.199433 -vt 0.750340 0.198327 -vt 0.751585 0.198322 -vt 0.750342 0.199519 -vt 0.752307 0.206420 -vt 0.754646 0.207763 -vt 0.753430 0.205822 -vt 0.753593 0.208516 -vt 0.756111 0.209555 -vt 0.755166 0.210433 -vt 0.757778 0.211132 -vt 0.756963 0.212126 -vt 0.773022 0.215521 -vt 0.770703 0.216006 -vt 0.775905 0.181655 -vt 0.775367 0.182914 -vt 0.777551 0.184025 -vt 0.778245 0.182842 -vt 0.772680 0.214328 -vt 0.775248 0.214716 -vt 0.779580 0.185407 -vt 0.780408 0.184330 -vt 0.763452 0.180923 -vt 0.466448 0.052011 -vt 0.519148 0.670546 -vt 0.519071 0.671656 -vt 0.029086 0.540532 -vt 0.292286 0.623496 -vt 0.312545 0.635588 -vt 0.131240 0.557236 -vt 0.091438 0.062250 -vt 0.072586 0.059976 -vt 0.236754 0.597436 -vt 0.266729 0.611280 -vt 0.049982 0.054289 -vt 0.041925 0.051187 -vt 0.597710 0.812752 -vt 0.526441 0.809903 -vt 0.661059 0.100755 -vt 0.712766 0.000376 -vt 0.712766 0.100755 -vt 0.021518 0.041705 -vt 0.003302 0.039646 -vt 0.074556 0.540980 -vt 0.523094 0.806307 -vt 0.526416 0.803182 -vt 0.021642 0.541202 -vt 0.006101 0.535987 -vt 0.028450 0.044926 -vt 0.195585 0.580247 -vt 0.051963 0.539002 -vt 0.044016 0.538189 -vt 0.092912 0.544550 -vt 0.226150 0.592826 -vt 0.519086 0.669434 -vt 0.521187 0.666070 -vt 0.169405 0.570584 -vt 0.637022 0.376671 -vt 0.531777 0.454439 -vt 0.530133 0.452109 -vt 0.690718 0.463476 -vt 0.533893 0.459598 -vt 0.691539 0.459598 -vt 0.744664 0.463301 -vt 0.747790 0.467677 -vt 0.546724 0.232015 -vt 0.549922 0.234777 -vt 0.546719 0.237254 -vt 0.530146 0.098529 -vt 0.661059 0.000376 -vt 0.679174 0.346600 -vt 0.692500 0.454439 -vt 0.769313 0.348548 -vt 0.773240 0.446979 -vt 0.768971 0.449432 -vt 0.762947 0.352431 -vt 0.765870 0.449759 -vt 0.761293 0.447946 -vt 0.766881 0.350498 -vt 0.543607 0.232016 -vt 0.540410 0.234777 -vt 0.540491 0.231927 -vt 0.543602 0.237254 -vt 0.743789 0.474893 -vt 0.690500 0.466554 -vt 0.747529 0.471063 -vt 0.690795 0.470475 -vt 0.531291 0.466605 -vt 0.532553 0.463618 -vt 0.168957 0.571854 -vt 0.130966 0.557887 -vt 0.169180 0.571218 -vt 0.514567 0.666213 -vt 0.516942 0.669434 -vt 0.512045 0.669371 -vt 0.518983 0.666081 -vt 0.194385 0.583745 -vt 0.225218 0.595612 -vt 0.224285 0.598399 -vt 0.194986 0.581995 -vt 0.235684 0.600645 -vt 0.234613 0.603855 -vt 0.092323 0.545756 -vt 0.074242 0.541647 -vt 0.092619 0.545153 -vt 0.072414 0.058479 -vt 0.049882 0.053275 -vt 0.049782 0.052261 -vt 0.072500 0.059227 -vt 0.051123 0.540801 -vt 0.043071 0.540253 -vt 0.051543 0.539902 -vt 0.043544 0.539221 -vt 0.041724 0.048870 -vt 0.027858 0.043476 -vt 0.027265 0.042026 -vt 0.041825 0.050028 -vt 0.019026 0.543588 -vt 0.002284 0.538141 -vt 0.020334 0.542395 -vt 0.004193 0.537064 -vt 0.516579 0.806298 -vt 0.519752 0.803150 -vt 0.519758 0.806304 -vt 0.523090 0.803162 -vt 0.073928 0.542314 -vt 0.019826 0.038505 -vt 0.001839 0.037949 -vt 0.000376 0.036253 -vt 0.020672 0.040105 -vt 0.263832 0.619979 -vt 0.290486 0.628903 -vt 0.288685 0.634310 -vt 0.265281 0.615629 -vt 0.091265 0.060964 -vt 0.091352 0.061607 -vt 0.130692 0.558539 -vt 0.311547 0.638588 -vt 0.310548 0.641588 -vt 0.027037 0.542808 -vt 0.028062 0.541670 -vt 0.512111 0.670500 -vt 0.516927 0.671628 -vt 0.512030 0.671627 -vt 0.517007 0.670532 -vt 0.466451 0.043670 -vt 0.519031 0.046936 -vt 0.526431 0.813011 -vt 0.523103 0.809878 -vt 0.523105 0.813023 -vt 0.543356 0.455764 -vt 0.543356 0.458846 -vt 0.540238 0.458846 -vt 0.546473 0.458846 -vt 0.546473 0.455764 -vt 0.549591 0.458846 -vt 0.518924 0.675008 -vt 0.516714 0.674935 -vt 0.514511 0.674818 -vt 0.519770 0.808087 -vt 0.523107 0.808092 -vt 0.516751 0.808083 -vt 0.526447 0.808096 -vt 0.521128 0.675047 -vt 0.713518 0.032739 -vt 0.748445 0.197016 -vt 0.592665 0.675765 -vt 0.595337 0.675975 -vt 0.799400 0.078156 -vt 0.600862 0.675976 -vt 0.604600 0.676075 -vt 0.644627 0.676232 -vt 0.595268 0.671023 -vt 0.644773 0.671166 -vt 0.719156 0.808190 -vt 0.534869 0.675118 -vt 0.735405 0.392935 -vt 0.833299 0.658490 -vt 0.885442 0.658489 -vt 0.520286 0.658496 -vt 0.634842 0.664522 -vt 0.687522 0.664525 -vt 0.597632 0.658496 -vt 0.565735 0.675484 -vt 0.747459 0.664629 -vt 0.746259 0.025302 -vt 0.521464 0.045692 -vt 0.013240 0.935388 -vt 0.085206 0.917040 -vt 0.108150 0.914017 -vt 0.053190 0.923479 -vt 0.154508 0.910435 -vt 0.750643 0.194765 -vt 0.713518 0.035051 -vt 0.748777 0.194398 -vt 0.600891 0.671039 -vt 0.598969 0.666136 -vt 0.595375 0.666071 -vt 0.679918 0.666452 -vt 0.715578 0.665382 -vt 0.615337 0.666075 -vt 0.604629 0.666027 -vt 0.795969 0.082773 -vt 0.736435 0.082279 -vt 0.760541 0.390209 -vt 0.717548 0.813109 -vt 0.559012 0.652604 -vt 0.512030 0.652616 -vt 0.721544 0.652462 -vt 0.713518 0.083084 -vt 0.648850 0.652468 -vt 0.595661 0.652697 -vt 0.747459 0.652357 -vt 0.747867 0.022080 -vt 0.551439 0.762201 -vt 0.582662 0.770438 -vt 0.671657 0.778248 -vt 0.714506 0.782679 -vt 0.199797 0.908140 -vt 0.199716 0.906973 -vt 0.669483 0.780407 -vt 0.746238 0.442576 -vt 0.751920 0.444267 -vt 0.745488 0.444267 -vt 0.738773 0.438493 -vt 0.737955 0.441716 -vt 0.736404 0.441499 -vt 0.204518 0.930808 -vt 0.042598 0.541285 -vt 0.060959 0.097792 -vt 0.766763 0.468147 -vt 0.765351 0.463585 -vt 0.738175 0.783986 -vt 0.765840 0.474500 -vt 0.768639 0.472540 -vt 0.769253 0.473536 -vt 0.528349 0.572880 -vt 0.544749 0.575860 -vt 0.527961 0.578056 -vt 0.512074 0.618257 -vt 0.545736 0.608645 -vt 0.512116 0.618950 -vt 0.947640 0.616890 -vt 0.915018 0.617631 -vt 0.915197 0.608013 -vt 0.544788 0.580437 -vt 0.527405 0.583498 -vt 0.545799 0.609323 -vt 0.512157 0.619633 -vt 0.695182 0.651596 -vt 0.662226 0.617764 -vt 0.695704 0.617854 -vt 0.933958 0.574966 -vt 0.915384 0.576153 -vt 0.915399 0.573333 -vt 0.528618 0.568113 -vt 0.544727 0.571482 -vt 0.769067 0.650576 -vt 0.740556 0.617802 -vt 0.768921 0.617596 -vt 0.915401 0.570623 -vt 0.934943 0.571713 -vt 0.915386 0.568123 -vt 0.936571 0.568690 -vt 0.544847 0.585068 -vt 0.526534 0.589058 -vt 0.512032 0.617562 -vt 0.545670 0.607969 -vt 0.915362 0.565823 -vt 0.938770 0.566020 -vt 0.528675 0.563627 -vt 0.544716 0.567437 -vt 0.706965 0.651605 -vt 0.707379 0.617863 -vt 0.915345 0.563625 -vt 0.941419 0.563625 -vt 0.945312 0.595356 -vt 0.915129 0.591197 -vt 0.915105 0.590120 -vt 0.546286 0.616818 -vt 0.512794 0.628940 -vt 0.661194 0.651128 -vt 0.633604 0.617189 -vt 0.942162 0.593616 -vt 0.915101 0.588455 -vt 0.740575 0.651295 -vt 0.948480 0.599574 -vt 0.915233 0.600913 -vt 0.915139 0.593770 -vt 0.939290 0.591219 -vt 0.915146 0.586428 -vt 0.515056 0.615696 -vt 0.545600 0.607294 -vt 0.948578 0.596389 -vt 0.936903 0.588329 -vt 0.915219 0.584196 -vt 0.935143 0.585137 -vt 0.915291 0.581690 -vt 0.517785 0.612890 -vt 0.545535 0.606028 -vt 0.632807 0.650162 -vt 0.589929 0.616511 -vt 0.934056 0.581775 -vt 0.915348 0.578975 -vt 0.948035 0.608259 -vt 0.933661 0.578351 -vt 0.520226 0.609216 -vt 0.545431 0.603973 -vt 0.522330 0.604826 -vt 0.545303 0.601200 -vt 0.791865 0.649805 -vt 0.791951 0.617306 -vt 0.524060 0.599889 -vt 0.545166 0.597804 -vt 0.589026 0.648843 -vt 0.525385 0.594579 -vt 0.545039 0.593896 -vt 0.544930 0.589603 -vt 0.915309 0.648789 -vt 0.785347 0.803421 -vt 0.796037 0.804997 -vt 0.785099 0.804856 -vt 0.766637 0.804586 -vt 0.766342 0.803140 -vt 0.771942 0.470420 -vt 0.772881 0.471392 -vt 0.746360 0.431845 -vt 0.743686 0.436008 -vt 0.742005 0.435294 -vt 0.721408 0.805508 -vt 0.719914 0.804272 -vt 0.775275 0.467655 -vt 0.776523 0.468608 -vt 0.794778 0.219955 -vt 0.780654 0.221209 -vt 0.780667 0.219699 -vt 0.794731 0.224148 -vt 0.780618 0.225254 -vt 0.780630 0.223957 -vt 0.794743 0.222856 -vt 0.780642 0.222620 -vt 0.794759 0.221461 -vt 0.738089 0.223832 -vt 0.739858 0.222700 -vt 0.742509 0.221451 -vt 0.746224 0.220056 -vt 0.803135 0.220076 -vt 0.805641 0.221483 -vt 0.807610 0.222863 -vt 0.808542 0.224204 -vt 0.794720 0.225372 -vt 0.808987 0.225492 -vt 0.771972 0.464063 -vt 0.767099 0.461853 -vt 0.768987 0.459598 -vt 0.767090 0.808557 -vt 0.732678 0.812618 -vt 0.727078 0.809372 -vt 0.750554 0.438388 -vt 0.754350 0.441811 -vt 0.747938 0.440627 -vt 0.740411 0.438957 -vt 0.767124 0.812308 -vt 0.754318 0.435816 -vt 0.756851 0.440200 -vt 0.752703 0.443151 -vt 0.762532 0.474856 -vt 0.765533 0.473470 -vt 0.736878 0.444267 -vt 0.735405 0.444267 -vt 0.769277 0.466415 -vt 0.793320 0.808927 -vt 0.748064 0.432807 -vt 0.762532 0.469218 -vt 0.762532 0.473779 -vt 0.792105 0.576138 -vt 0.789222 0.573314 -vt 0.786247 0.570606 -vt 0.783185 0.568116 -vt 0.779885 0.565823 -vt 0.792372 0.591046 -vt 0.792373 0.590004 -vt 0.792351 0.588378 -vt 0.792302 0.586377 -vt 0.792245 0.584156 -vt 0.792189 0.581660 -vt 0.768759 0.581898 -vt 0.775690 0.563625 -vt 0.768847 0.565669 -vt 0.768848 0.563625 -vt 0.768703 0.588568 -vt 0.768717 0.586715 -vt 0.768835 0.570551 -vt 0.768844 0.567955 -vt 0.768698 0.589947 -vt 0.768782 0.579120 -vt 0.792140 0.578952 -vt 0.768804 0.576236 -vt 0.768822 0.573344 -vt 0.768736 0.584462 -vt 0.662369 0.604838 -vt 0.633779 0.604324 -vt 0.662371 0.602666 -vt 0.707335 0.595317 -vt 0.695788 0.593457 -vt 0.707327 0.592221 -vt 0.695794 0.589769 -vt 0.707323 0.588687 -vt 0.662378 0.596204 -vt 0.634152 0.593416 -vt 0.662385 0.592167 -vt 0.695797 0.585770 -vt 0.707321 0.584854 -vt 0.662395 0.587793 -vt 0.634371 0.584118 -vt 0.662406 0.583251 -vt 0.695799 0.581611 -vt 0.707321 0.580867 -vt 0.634447 0.579380 -vt 0.662417 0.578712 -vt 0.695800 0.577453 -vt 0.707320 0.576882 -vt 0.695801 0.573456 -vt 0.707320 0.573050 -vt 0.695802 0.569772 -vt 0.707321 0.569518 -vt 0.695803 0.566544 -vt 0.707321 0.566423 -vt 0.662365 0.606178 -vt 0.633696 0.606570 -vt 0.707373 0.600907 -vt 0.695749 0.601318 -vt 0.707362 0.599745 -vt 0.662374 0.599750 -vt 0.634021 0.597618 -vt 0.589565 0.579772 -vt 0.589566 0.575248 -vt 0.589566 0.570997 -vt 0.589565 0.588991 -vt 0.589565 0.584408 -vt 0.589565 0.593357 -vt 0.589563 0.597348 -vt 0.589561 0.600821 -vt 0.589556 0.603654 -vt 0.589550 0.605747 -vt 0.589566 0.567166 -vt 0.544713 0.563627 -vt 0.589565 0.563626 -vt 0.707348 0.597858 -vt 0.695779 0.596690 -vt 0.740515 0.590875 -vt 0.768695 0.590798 -vt 0.740475 0.594686 -vt 0.740496 0.593061 -vt 0.695803 0.563625 -vt 0.707320 0.563625 -vt 0.662434 0.566810 -vt 0.634551 0.563626 -vt 0.662435 0.563625 -vt 0.740542 0.566033 -vt 0.662431 0.570332 -vt 0.634547 0.566950 -vt 0.740542 0.568696 -vt 0.662425 0.574351 -vt 0.634532 0.570628 -vt 0.740542 0.571734 -vt 0.634500 0.574825 -vt 0.740542 0.575029 -vt 0.740543 0.563625 -vt 0.740541 0.578456 -vt 0.740539 0.581882 -vt 0.634271 0.588857 -vt 0.740536 0.585176 -vt 0.740528 0.588213 -vt 0.633892 0.601301 -vt 0.695765 0.599344 -vt 0.740457 0.595687 -vt 0.695736 0.602534 -vt 0.589545 0.607045 -vt 0.792020 0.606768 -vt 0.589722 0.609342 -vt 0.633613 0.609864 -vt 0.707374 0.609645 -vt 0.662332 0.610988 -vt 0.695722 0.610131 -vt 0.740491 0.607500 -vt 0.768813 0.605396 -vt 0.792086 0.601544 -vt 0.768783 0.600530 -vt 0.662350 0.609382 -vt 0.740479 0.603562 -vt 0.695727 0.607598 -vt 0.633621 0.609227 -vt 0.707373 0.606732 -vt 0.589663 0.608581 -vt 0.792199 0.596305 -vt 0.589604 0.607813 -vt 0.633649 0.607952 -vt 0.633632 0.608589 -vt 0.740468 0.599624 -vt 0.707373 0.603819 -vt 0.662360 0.607779 -vt 0.695732 0.605065 -vt 0.768745 0.595664 -vt 0.750456 0.022295 -vt 0.748828 0.023646 -vt 0.748820 0.022168 -vt 0.750468 0.025015 -vt 0.749046 0.026594 -vt 0.748834 0.025128 -vt 0.778356 0.038347 -vt 0.781290 0.037566 -vt 0.779125 0.039790 -vt 0.781632 0.038060 -vt 0.780416 0.011140 -vt 0.779199 0.008085 -vt 0.781519 0.010197 -vt 0.776129 0.007715 -vt 0.778368 0.009306 -vt 0.776697 0.006183 -vt 0.773685 0.006494 -vt 0.774089 0.004534 -vt 0.776128 0.039911 -vt 0.776797 0.041790 -vt 0.760467 0.040143 -vt 0.762396 0.042846 -vt 0.759671 0.041700 -vt 0.758132 0.038765 -vt 0.757147 0.040163 -vt 0.754887 0.038268 -vt 0.756051 0.037043 -vt 0.752936 0.036055 -vt 0.754249 0.035026 -vt 0.751330 0.033578 -vt 0.752765 0.032763 -vt 0.750098 0.030894 -vt 0.751627 0.030306 -vt 0.749257 0.028058 -vt 0.750860 0.027707 -vt 0.750661 0.026362 -vt 0.773654 0.041013 -vt 0.774010 0.042889 -vt 0.771030 0.041697 -vt 0.771143 0.043577 -vt 0.768331 0.041951 -vt 0.768202 0.043796 -vt 0.765627 0.041769 -vt 0.765262 0.043549 -vt 0.762985 0.041161 -vt 0.758094 0.008566 -vt 0.759624 0.005616 -vt 0.760436 0.007204 -vt 0.754831 0.009031 -vt 0.757094 0.007142 -vt 0.756007 0.010280 -vt 0.752881 0.011240 -vt 0.754203 0.012294 -vt 0.751279 0.013717 -vt 0.752721 0.014556 -vt 0.750056 0.016402 -vt 0.751589 0.017013 -vt 0.749234 0.019239 -vt 0.750829 0.019611 -vt 0.750459 0.023655 -vt 0.771063 0.005767 -vt 0.771156 0.003853 -vt 0.768352 0.005477 -vt 0.768205 0.003592 -vt 0.765632 0.005627 -vt 0.765248 0.003809 -vt 0.762971 0.006209 -vt 0.762364 0.004490 -vt 0.522673 0.748585 -vt 0.524772 0.748454 -vt 0.524715 0.748900 -vt 0.522795 0.747113 -vt 0.524837 0.747560 -vt 0.522787 0.747481 -vt 0.519608 0.744917 -vt 0.516555 0.746372 -vt 0.519495 0.744686 -vt 0.521685 0.751454 -vt 0.523554 0.752660 -vt 0.521586 0.751626 -vt 0.521865 0.751106 -vt 0.524026 0.751563 -vt 0.523852 0.752003 -vt 0.004058 0.944300 -vt 0.000703 0.943851 -vt 0.000717 0.943774 -vt 0.003965 0.942293 -vt 0.000664 0.943078 -vt 0.003899 0.942046 -vt 0.004108 0.943293 -vt 0.000735 0.943540 -vt 0.000733 0.943462 -vt 0.519231 0.744239 -vt 0.516514 0.746305 -vt 0.516470 0.746241 -vt 0.003629 0.941325 -vt 0.000537 0.942791 -vt 0.003514 0.941091 -vt 0.527394 0.749802 -vt 0.006574 0.941322 -vt 0.008717 0.941297 -vt 0.006658 0.941691 -vt 0.011628 0.941929 -vt 0.011572 0.941385 -vt 0.519155 0.750094 -vt 0.516399 0.748080 -vt 0.516435 0.748033 -vt 0.003621 0.945765 -vt 0.000535 0.944290 -vt 0.000573 0.944220 -vt 0.003387 0.940862 -vt 0.000496 0.942723 -vt 0.010282 0.936475 -vt 0.000607 0.944149 -vt 0.003724 0.945528 -vt 0.010695 0.937576 -vt 0.010497 0.937027 -vt 0.004089 0.944050 -vt 0.000727 0.943696 -vt 0.519997 0.748106 -vt 0.516703 0.747495 -vt 0.516721 0.747420 -vt 0.003162 0.946560 -vt 0.000376 0.944518 -vt 0.000412 0.944470 -vt 0.520068 0.747611 -vt 0.516735 0.747343 -vt 0.516744 0.747267 -vt 0.004091 0.943042 -vt 0.000717 0.943307 -vt 0.004061 0.942791 -vt 0.527525 0.748726 -vt 0.527566 0.748188 -vt 0.519800 0.745389 -vt 0.516625 0.746511 -vt 0.519710 0.745152 -vt 0.519156 0.744132 -vt 0.516398 0.746146 -vt 0.519081 0.744023 -vt 0.522727 0.748218 -vt 0.524812 0.748007 -vt 0.519799 0.748836 -vt 0.516681 0.747569 -vt 0.519877 0.748595 -vt 0.008522 0.940397 -vt 0.008628 0.940847 -vt 0.006359 0.940590 -vt 0.006475 0.940955 -vt 0.008258 0.939502 -vt 0.008399 0.939949 -vt 0.006228 0.940228 -vt 0.008101 0.939055 -vt 0.005915 0.939511 -vt 0.006080 0.939868 -vt 0.007731 0.938166 -vt 0.007925 0.938610 -vt 0.005535 0.938812 -vt 0.007626 0.937945 -vt 0.005635 0.938986 -vt 0.526592 0.753035 -vt 0.004107 0.943798 -vt 0.004114 0.943546 -vt 0.006839 0.943177 -vt 0.008887 0.942650 -vt 0.008910 0.943102 -vt 0.523658 0.752442 -vt 0.006817 0.942805 -vt 0.008847 0.942198 -vt 0.006727 0.942061 -vt 0.006779 0.942433 -vt 0.011497 0.940842 -vt 0.519368 0.749765 -vt 0.516556 0.747854 -vt 0.519494 0.749539 -vt 0.522605 0.748952 -vt 0.524553 0.749791 -vt 0.522521 0.749316 -vt 0.520068 0.746614 -vt 0.516734 0.746882 -vt 0.520038 0.746366 -vt 0.010390 0.936752 -vt 0.522422 0.749679 -vt 0.524446 0.750236 -vt 0.522307 0.750040 -vt 0.524324 0.750679 -vt 0.524184 0.751122 -vt 0.522176 0.750398 -vt 0.522029 0.750753 -vt 0.526179 0.754122 -vt 0.526287 0.753848 -vt 0.008918 0.943554 -vt 0.006846 0.943550 -vt 0.527591 0.747650 -vt 0.527467 0.749264 -vt 0.519230 0.749986 -vt 0.516515 0.747921 -vt 0.522765 0.747850 -vt 0.011407 0.940299 -vt 0.011300 0.939755 -vt 0.011176 0.939211 -vt 0.011033 0.938668 -vt 0.010874 0.938123 -vt 0.005734 0.939160 -vt 0.521487 0.751798 -vt 0.523448 0.752880 -vt 0.011692 0.943015 -vt 0.011669 0.942472 -vt 0.526394 0.753576 -vt 0.008790 0.941747 -vt 0.000449 0.944423 -vt 0.003238 0.946451 -vt 0.524642 0.749346 -vt 0.527303 0.750340 -vt 0.519369 0.744460 -vt 0.527071 0.751416 -vt 0.527195 0.750877 -vt 0.526929 0.751954 -vt 0.526769 0.752494 -vt 0.003173 0.940528 -vt 0.000451 0.942658 -vt 0.000415 0.942610 -vt 0.003961 0.944798 -vt 0.000663 0.944002 -vt 0.000685 0.943927 -vt 0.527599 0.747113 -vt 0.000608 0.942931 -vt 0.000574 0.942860 -vt 0.000703 0.943230 -vt 0.004019 0.942541 -vt 0.520038 0.747859 -vt 0.003821 0.941803 -vt 0.003731 0.941562 -vt 0.003248 0.940637 -vt 0.003097 0.940418 -vt 0.007519 0.937723 -vt 0.519710 0.749073 -vt 0.519608 0.749308 -vt 0.519081 0.750202 -vt 0.520086 0.747362 -vt 0.524845 0.747113 -vt 0.519943 0.748351 -vt 0.584169 0.223261 -vt 0.553110 0.224360 -vt 0.553065 0.223229 -vt 0.033352 0.724052 -vt 0.041606 0.743546 -vt 0.028233 0.722352 -vt 0.735406 0.273442 -vt 0.760542 0.270716 -vt 0.760542 0.273441 -vt 0.413156 0.997369 -vt 0.385822 0.996083 -vt 0.412981 0.993856 -vt 0.336427 0.404512 -vt 0.466200 0.401163 -vt 0.467327 0.404508 -vt 0.333584 0.401167 -vt 0.465021 0.397818 -vt 0.330611 0.397822 -vt 0.463788 0.394473 -vt 0.327503 0.394477 -vt 0.462502 0.391129 -vt 0.324259 0.391132 -vt 0.460948 0.387643 -vt 0.313562 0.302674 -vt 0.336425 0.403560 -vt 0.313706 0.403560 -vt 0.336427 0.427926 -vt 0.467328 0.424578 -vt 0.467328 0.427923 -vt 0.336427 0.424581 -vt 0.467328 0.421233 -vt 0.336427 0.421236 -vt 0.467328 0.417888 -vt 0.336427 0.417891 -vt 0.467328 0.414543 -vt 0.336427 0.414546 -vt 0.467327 0.411198 -vt 0.336427 0.411201 -vt 0.467327 0.407853 -vt 0.336427 0.407857 -vt 0.540223 0.972846 -vt 0.517853 0.967021 -vt 0.540565 0.969603 -vt 0.519783 0.946510 -vt 0.519793 0.943799 -vt 0.539618 0.979328 -vt 0.517363 0.973944 -vt 0.539909 0.976088 -vt 0.534539 0.951988 -vt 0.519257 0.952784 -vt 0.519599 0.949478 -vt 0.539089 0.985796 -vt 0.517096 0.980739 -vt 0.539347 0.982565 -vt 0.518157 0.963517 -vt 0.540937 0.966361 -vt 0.539007 0.959503 -vt 0.518502 0.959897 -vt 0.518873 0.956288 -vt 0.517585 0.970496 -vt 0.532845 0.948078 -vt 0.517197 0.977360 -vt 0.541327 0.963130 -vt 0.536696 0.955795 -vt 0.329589 0.749838 -vt 0.310295 0.826668 -vt 0.306302 0.745665 -vt 0.131845 0.729531 -vt 0.093158 0.740081 -vt 0.091709 0.731651 -vt 0.489227 0.965388 -vt 0.489344 0.961295 -vt 0.489444 0.957239 -vt 0.412926 0.947434 -vt 0.489567 0.949765 -vt 0.074445 0.399104 -vt 0.092071 0.403561 -vt 0.073219 0.409732 -vt 0.456601 0.947020 -vt 0.277800 0.957793 -vt 0.296344 0.952964 -vt 0.296351 0.958075 -vt 0.277782 0.952835 -vt 0.296339 0.948244 -vt 0.277771 0.948202 -vt 0.719208 0.740482 -vt 0.738661 0.737427 -vt 0.738647 0.740733 -vt 0.810365 0.737960 -vt 0.791857 0.733161 -vt 0.810372 0.732854 -vt 0.738704 0.730739 -vt 0.719137 0.727953 -vt 0.738723 0.727438 -vt 0.761654 0.743222 -vt 0.769179 0.743037 -vt 0.203860 0.978599 -vt 0.223952 0.978331 -vt 0.223658 0.980841 -vt 0.277998 0.742549 -vt 0.247645 0.786790 -vt 0.244972 0.739196 -vt 0.277602 0.993898 -vt 0.296262 0.992546 -vt 0.296176 0.996018 -vt 0.769251 0.702446 -vt 0.760730 0.702439 -vt 0.768891 0.699750 -vt 0.277767 0.990595 -vt 0.296321 0.988604 -vt 0.769450 0.705431 -vt 0.761238 0.705032 -vt 0.277859 0.986857 -vt 0.296357 0.984194 -vt 0.769536 0.708759 -vt 0.761579 0.707876 -vt 0.277899 0.982684 -vt 0.296374 0.979376 -vt 0.769544 0.712436 -vt 0.761784 0.711019 -vt 0.277902 0.978122 -vt 0.296375 0.974241 -vt 0.769503 0.716434 -vt 0.761884 0.714474 -vt 0.277881 0.973252 -vt 0.296370 0.968866 -vt 0.769433 0.720696 -vt 0.761906 0.718219 -vt 0.277338 0.996829 -vt 0.296055 0.999081 -vt 0.277826 0.962938 -vt 0.296361 0.963424 -vt 0.791877 0.728034 -vt 0.810379 0.727506 -vt 0.810382 0.722062 -vt 0.791909 0.717761 -vt 0.810376 0.716681 -vt 0.109340 0.955020 -vt 0.157162 0.954857 -vt 0.157147 0.957563 -vt 0.663856 0.741658 -vt 0.624670 0.740368 -vt 0.667433 0.738841 -vt 0.109408 0.952754 -vt 0.152272 0.951973 -vt 0.624619 0.738110 -vt 0.672202 0.735962 -vt 0.109460 0.950488 -vt 0.148660 0.949170 -vt 0.624552 0.735846 -vt 0.672183 0.733272 -vt 0.109497 0.948227 -vt 0.146012 0.946433 -vt 0.661217 0.744417 -vt 0.624705 0.742620 -vt 0.109519 0.945969 -vt 0.624725 0.744867 -vt 0.154525 0.975963 -vt 0.108303 0.971094 -vt 0.156627 0.974958 -vt 0.669567 0.714975 -vt 0.623278 0.717512 -vt 0.669483 0.713817 -vt 0.156766 0.972613 -vt 0.671795 0.718308 -vt 0.623517 0.719827 -vt 0.671657 0.715975 -vt 0.108519 0.968777 -vt 0.156879 0.970236 -vt 0.671907 0.720672 -vt 0.623733 0.722136 -vt 0.108711 0.966468 -vt 0.156968 0.967814 -vt 0.671996 0.723079 -vt 0.623925 0.724438 -vt 0.108880 0.964165 -vt 0.157036 0.965340 -vt 0.672065 0.725539 -vt 0.624094 0.726733 -vt 0.109026 0.961869 -vt 0.157087 0.962808 -vt 0.672118 0.728057 -vt 0.624239 0.729021 -vt 0.109151 0.959580 -vt 0.157123 0.960215 -vt 0.672156 0.730635 -vt 0.624364 0.731302 -vt 0.109255 0.957297 -vt 0.624467 0.733577 -vt 0.014431 0.946059 -vt 0.037904 0.947147 -vt 0.037809 0.948326 -vt 0.553561 0.743598 -vt 0.530307 0.744642 -vt 0.553469 0.742428 -vt 0.037539 0.950681 -vt 0.014358 0.946682 -vt 0.037687 0.949505 -vt 0.553666 0.745940 -vt 0.530403 0.745877 -vt 0.553627 0.744769 -vt 0.602328 0.739006 -vt 0.087168 0.947754 -vt 0.602220 0.736975 -vt 0.585079 0.745328 -vt 0.571154 0.744033 -vt 0.585036 0.743543 -vt 0.013434 0.951035 -vt 0.036390 0.956516 -vt 0.036078 0.957671 -vt 0.582843 0.724694 -vt 0.568667 0.727128 -vt 0.582661 0.723786 -vt 0.551602 0.732594 -vt 0.529108 0.739018 -vt 0.551438 0.732023 -vt 0.583359 0.727409 -vt 0.569050 0.728659 -vt 0.583025 0.725600 -vt 0.552356 0.735458 -vt 0.529496 0.740328 -vt 0.552076 0.734308 -vt 0.569719 0.731728 -vt 0.583662 0.729213 -vt 0.552609 0.736611 -vt 0.529652 0.740944 -vt 0.570006 0.733265 -vt 0.583936 0.731013 -vt 0.529929 0.742176 -vt 0.552834 0.737769 -vt 0.570261 0.734802 -vt 0.584180 0.732810 -vt 0.553033 0.738930 -vt 0.584395 0.734604 -vt 0.530148 0.743408 -vt 0.553205 0.740094 -vt 0.570680 0.737877 -vt 0.584581 0.736395 -vt 0.055158 0.952938 -vt 0.069321 0.952640 -vt 0.069162 0.954442 -vt 0.109528 0.943714 -vt 0.087104 0.949792 -vt 0.085719 0.966184 -vt 0.584737 0.738184 -vt 0.553350 0.741260 -vt 0.602413 0.741034 -vt 0.086770 0.955915 -vt 0.602086 0.734942 -vt 0.054961 0.954488 -vt 0.068975 0.956245 -vt 0.014164 0.947927 -vt 0.037363 0.951854 -vt 0.601745 0.730866 -vt 0.054734 0.956038 -vt 0.068758 0.958051 -vt 0.014045 0.948549 -vt 0.037161 0.953025 -vt 0.086609 0.957961 -vt 0.601536 0.728823 -vt 0.068513 0.959860 -vt 0.036932 0.954193 -vt 0.086214 0.962064 -vt 0.054185 0.959136 -vt 0.068238 0.961672 -vt 0.013764 0.949792 -vt 0.036675 0.955357 -vt 0.601043 0.724725 -vt 0.067933 0.963489 -vt 0.085979 0.964122 -vt 0.067415 0.966222 -vt 0.053510 0.962230 -vt 0.067598 0.965310 -vt 0.108183 0.972255 -vt 0.085433 0.968250 -vt 0.529326 0.739711 -vt 0.551768 0.733164 -vt 0.623397 0.718670 -vt 0.600446 0.720609 -vt 0.035909 0.958246 -vt 0.053864 0.960683 -vt 0.602508 0.745087 -vt 0.055692 0.945182 -vt 0.069670 0.945450 -vt 0.038014 0.944784 -vt 0.602473 0.743061 -vt 0.069625 0.947246 -vt 0.037972 0.945966 -vt 0.014556 0.944187 -vt 0.584865 0.739972 -vt 0.570843 0.739415 -vt 0.055568 0.948285 -vt 0.069552 0.949043 -vt 0.014489 0.945435 -vt 0.584965 0.741758 -vt 0.055461 0.949836 -vt 0.069451 0.950841 -vt 0.086906 0.953872 -vt 0.570977 0.740954 -vt 0.601928 0.732906 -vt 0.570486 0.736339 -vt 0.086424 0.960011 -vt 0.054475 0.957587 -vt 0.601302 0.726776 -vt 0.569401 0.730193 -vt 0.600602 0.721640 -vt 0.568859 0.727894 -vt 0.085277 0.969285 -vt 0.067232 0.967137 -vt 0.053317 0.963002 -vt 0.035744 0.958822 -vt 0.087207 0.945718 -vt 0.055645 0.946734 -vt 0.087017 0.951831 -vt 0.341090 0.973598 -vt 0.341093 0.968146 -vt 0.341084 0.978841 -vt 0.341072 0.983804 -vt 0.341051 0.988389 -vt 0.341024 0.992535 -vt 0.340992 0.996232 -vt 0.340958 0.999543 -vt 0.281007 0.808028 -vt 0.044091 0.399105 -vt 0.050718 0.413491 -vt 0.042660 0.415543 -vt 0.341091 0.947936 -vt 0.341092 0.952415 -vt 0.341093 0.957386 -vt 0.341093 0.962684 -vt 0.769239 0.734338 -vt 0.761772 0.730698 -vt 0.769293 0.729764 -vt 0.719199 0.737227 -vt 0.738681 0.734083 -vt 0.761678 0.739197 -vt 0.769201 0.738799 -vt 0.810360 0.742674 -vt 0.791842 0.738104 -vt 0.738639 0.743954 -vt 0.761827 0.726404 -vt 0.769360 0.725180 -vt 0.791897 0.722852 -vt 0.247640 0.968803 -vt 0.255190 0.965824 -vt 0.255257 0.970339 -vt 0.204469 0.962913 -vt 0.224230 0.960144 -vt 0.224246 0.963470 -vt 0.791910 0.712916 -vt 0.810355 0.711536 -vt 0.247662 0.972828 -vt 0.255326 0.974636 -vt 0.204424 0.965815 -vt 0.224261 0.966703 -vt 0.719095 0.725077 -vt 0.738741 0.724236 -vt 0.791882 0.708380 -vt 0.810307 0.706705 -vt 0.247635 0.976610 -vt 0.255370 0.978669 -vt 0.204363 0.968593 -vt 0.224259 0.969829 -vt 0.719037 0.722324 -vt 0.738744 0.721139 -vt 0.791813 0.704236 -vt 0.810223 0.702284 -vt 0.247532 0.980100 -vt 0.255365 0.982382 -vt 0.204280 0.971249 -vt 0.224224 0.972821 -vt 0.718958 0.719691 -vt 0.738715 0.718177 -vt 0.791690 0.700531 -vt 0.810098 0.698336 -vt 0.247323 0.983278 -vt 0.255284 0.985744 -vt 0.204171 0.973790 -vt 0.224131 0.975659 -vt 0.718854 0.717171 -vt 0.738629 0.715367 -vt 0.791496 0.697263 -vt 0.809921 0.694868 -vt 0.246978 0.986155 -vt 0.255090 0.988763 -vt 0.204032 0.976232 -vt 0.718720 0.714750 -vt 0.738458 0.712721 -vt 0.791204 0.694371 -vt 0.809679 0.691831 -vt 0.529381 0.429594 -vt 0.521467 0.431267 -vt 0.521467 0.429594 -vt 0.463149 0.763208 -vt 0.334139 0.838843 -vt 0.718554 0.712402 -vt 0.738174 0.710236 -vt 0.034683 0.399102 -vt 0.027659 0.421813 -vt 0.013914 0.423172 -vt 0.209697 0.376491 -vt 0.242255 0.403561 -vt 0.209648 0.403561 -vt 0.246463 0.988780 -vt 0.254734 0.991492 -vt 0.073279 0.731071 -vt 0.053674 0.742613 -vt 0.051245 0.728793 -vt 0.791832 0.742724 -vt 0.719165 0.730945 -vt 0.761877 0.722207 -vt 0.247541 0.947691 -vt 0.255059 0.947889 -vt 0.719214 0.743785 -vt 0.761719 0.734990 -vt 0.247540 0.951710 -vt 0.255070 0.952139 -vt 0.783561 0.817187 -vt 0.789588 0.813370 -vt 0.793320 0.817061 -vt 0.247549 0.955927 -vt 0.255094 0.956617 -vt 0.760511 0.468857 -vt 0.247602 0.964568 -vt 0.255134 0.961213 -vt 0.277854 0.968139 -vt 0.204500 0.959894 -vt 0.224206 0.956780 -vt 0.247571 0.960245 -vt 0.753644 0.735811 -vt 0.750244 0.732345 -vt 0.756304 0.739538 -vt 0.746707 0.725622 -vt 0.746654 0.729213 -vt 0.232311 0.965303 -vt 0.232260 0.961664 -vt 0.746759 0.722173 -vt 0.232359 0.968793 -vt 0.746781 0.718886 -vt 0.232376 0.972118 -vt 0.746745 0.715794 -vt 0.232334 0.975245 -vt 0.746614 0.712915 -vt 0.232196 0.978155 -vt 0.746346 0.710250 -vt 0.231920 0.980850 -vt 0.745897 0.707769 -vt 0.231459 0.983358 -vt 0.285665 0.322500 -vt 0.285990 0.403560 -vt 0.242382 0.353261 -vt 0.253624 0.403561 -vt 0.757562 0.743345 -vt 0.243477 0.947047 -vt 0.242160 0.950329 -vt 0.239392 0.953545 -vt 0.235854 0.956565 -vt 0.456590 0.950581 -vt 0.445340 0.947139 -vt 0.412921 0.951455 -vt 0.385842 0.947623 -vt 0.489591 0.946626 -vt 0.456569 0.954638 -vt 0.445332 0.950834 -vt 0.412913 0.956040 -vt 0.385841 0.951851 -vt 0.036766 0.743930 -vt 0.014735 0.722040 -vt 0.456537 0.959037 -vt 0.445316 0.955046 -vt 0.412899 0.961014 -vt 0.385837 0.956672 -vt 0.456495 0.963631 -vt 0.445292 0.959615 -vt 0.412880 0.966207 -vt 0.385832 0.961902 -vt 0.489519 0.953352 -vt 0.489101 0.969347 -vt 0.456449 0.968265 -vt 0.445260 0.964386 -vt 0.412859 0.971439 -vt 0.385825 0.967357 -vt 0.456400 0.972750 -vt 0.445223 0.969197 -vt 0.412836 0.976501 -vt 0.385815 0.972847 -vt 0.456372 0.977076 -vt 0.445184 0.973853 -vt 0.412823 0.981339 -vt 0.385805 0.978152 -vt 0.456384 0.981187 -vt 0.445158 0.978328 -vt 0.412833 0.985869 -vt 0.385794 0.983203 -vt 0.488990 0.973209 -vt 0.456457 0.985054 -vt 0.445162 0.982561 -vt 0.412880 0.990042 -vt 0.385789 0.987904 -vt 0.488918 0.976948 -vt 0.456615 0.988681 -vt 0.445212 0.986515 -vt 0.385795 0.992199 -vt 0.488909 0.980552 -vt 0.182168 0.399103 -vt 0.182168 0.403561 -vt 0.253887 0.345084 -vt 0.041175 0.399104 -vt 0.032755 0.419683 -vt 0.456879 0.992112 -vt 0.445333 0.990195 -vt 0.200100 0.733577 -vt 0.172467 0.735547 -vt 0.171984 0.727020 -vt 0.137732 0.399103 -vt 0.137119 0.403561 -vt 0.488995 0.984026 -vt 0.489204 0.987402 -vt 0.445550 0.993649 -vt 0.045882 0.743210 -vt 0.043283 0.727364 -vt 0.052148 0.399104 -vt 0.517063 0.984070 -vt 0.735385 0.085409 -vt 0.737630 0.088339 -vt 0.734762 0.087116 -vt 0.732142 0.084536 -vt 0.731743 0.086345 -vt 0.728803 0.084176 -vt 0.728639 0.086055 -vt 0.725447 0.084343 -vt 0.725526 0.086257 -vt 0.722003 0.084949 -vt 0.722414 0.086883 -vt 0.750448 0.107423 -vt 0.748819 0.108991 -vt 0.748813 0.107434 -vt 0.748404 0.102803 -vt 0.750448 0.105742 -vt 0.748825 0.105881 -vt 0.747556 0.099817 -vt 0.749998 0.102424 -vt 0.746292 0.096985 -vt 0.749088 0.099202 -vt 0.744633 0.094366 -vt 0.747732 0.096143 -vt 0.742610 0.092019 -vt 0.745954 0.093311 -vt 0.740261 0.089998 -vt 0.743787 0.090769 -vt 0.741270 0.088572 -vt 0.734704 0.127778 -vt 0.732081 0.130335 -vt 0.731701 0.128566 -vt 0.728763 0.130723 -vt 0.728617 0.128885 -vt 0.725424 0.130594 -vt 0.725520 0.128719 -vt 0.722144 0.129944 -vt 0.722485 0.128067 -vt 0.718842 0.128849 -vt 0.719514 0.126999 -vt 0.750202 0.110765 -vt 0.748369 0.112068 -vt 0.748585 0.110530 -vt 0.749957 0.112428 -vt 0.747501 0.115051 -vt 0.749028 0.115645 -vt 0.746224 0.117881 -vt 0.747657 0.118701 -vt 0.744557 0.120498 -vt 0.745869 0.121530 -vt 0.742531 0.122846 -vt 0.743695 0.124073 -vt 0.740182 0.124871 -vt 0.741177 0.126274 -vt 0.737555 0.126536 -vt 0.738357 0.128089 -vt 0.716452 0.125901 -vt 0.717294 0.124493 -vt 0.719197 0.087534 -vt 0.719841 0.089050 -vt 0.716364 0.090148 -vt 0.717222 0.091343 -vt 0.714640 0.093693 -vt 0.714050 0.122919 -vt 0.715060 0.121860 -vt 0.833716 0.689624 -vt 0.749143 0.686650 -vt 0.833298 0.686559 -vt 0.723230 0.686575 -vt 0.749146 0.684943 -vt 0.749143 0.683236 -vt 0.833716 0.680266 -vt 0.833298 0.683331 -vt 0.723230 0.683309 -vt 0.597635 0.686611 -vt 0.558887 0.684940 -vt 0.597634 0.684940 -vt 0.636752 0.686588 -vt 0.650754 0.684940 -vt 0.650752 0.686591 -vt 0.075147 0.741160 -vt 0.075444 0.758179 -vt 0.121664 0.381186 -vt 0.093297 0.399103 -vt 0.610674 0.223268 -vt 0.584169 0.224367 -vt 0.067769 0.758804 -vt 0.062478 0.381185 -vt 0.584169 0.225463 -vt 0.610793 0.229130 -vt 0.583872 0.228997 -vt 0.073453 0.381186 -vt 0.095750 0.381186 -vt 0.096396 0.756518 -vt 0.065394 0.381186 -vt 0.055986 0.381184 -vt 0.039675 0.399103 -vt 0.783595 0.673624 -vt 0.797622 0.672146 -vt 0.797610 0.673692 -vt 0.689420 0.686590 -vt 0.723229 0.684942 -vt 0.636752 0.683291 -vt 0.648852 0.678912 -vt 0.650752 0.683289 -vt 0.689420 0.683292 -vt 0.721545 0.678910 -vt 0.558889 0.683114 -vt 0.595663 0.679140 -vt 0.597635 0.683268 -vt 0.687523 0.690971 -vt 0.648852 0.690967 -vt 0.634845 0.690965 -vt 0.595663 0.690739 -vt 0.689417 0.684941 -vt 0.636751 0.684940 -vt 0.235571 0.779097 -vt 0.233352 0.737591 -vt 0.201260 0.757205 -vt 0.553065 0.225491 -vt 0.553006 0.228830 -vt 0.520285 0.683288 -vt 0.559014 0.679048 -vt 0.520285 0.686592 -vt 0.558889 0.686766 -vt 0.385879 0.999624 -vt 0.132899 0.737612 -vt 0.883939 0.679956 -vt 0.885443 0.683284 -vt 0.883939 0.689937 -vt 0.885442 0.686608 -vt 0.461070 0.884631 -vt 0.515646 0.761361 -vt 0.336425 0.289487 -vt 0.466452 0.403559 -vt 0.735407 0.319777 -vt 0.760543 0.317051 -vt 0.760543 0.319777 -vt 0.713519 0.186955 -vt 0.745493 0.184643 -vt 0.745493 0.186955 -vt 0.735406 0.295247 -vt 0.760542 0.292521 -vt 0.760542 0.295246 -vt 0.735406 0.270716 -vt 0.760542 0.267990 -vt 0.760542 0.297972 -vt 0.735406 0.267991 -vt 0.760542 0.265265 -vt 0.735405 0.240735 -vt 0.760541 0.238009 -vt 0.760541 0.240734 -vt 0.760542 0.300697 -vt 0.735406 0.297972 -vt 0.735406 0.265265 -vt 0.760541 0.262539 -vt 0.735406 0.303423 -vt 0.760543 0.303423 -vt 0.735405 0.262540 -vt 0.760541 0.259813 -vt 0.760543 0.306149 -vt 0.519034 0.404507 -vt 0.519034 0.407852 -vt 0.519034 0.411197 -vt 0.519034 0.414542 -vt 0.519034 0.417887 -vt 0.519034 0.421232 -vt 0.519034 0.424577 -vt 0.519034 0.427922 -vt 0.519033 0.387642 -vt 0.519033 0.391127 -vt 0.519033 0.394472 -vt 0.519033 0.397817 -vt 0.519033 0.401162 -vt 0.735405 0.248912 -vt 0.760541 0.246185 -vt 0.760541 0.248911 -vt 0.735405 0.259814 -vt 0.760541 0.257088 -vt 0.735405 0.246186 -vt 0.760541 0.243460 -vt 0.735406 0.308875 -vt 0.760543 0.308874 -vt 0.735405 0.257088 -vt 0.760541 0.254362 -vt 0.735405 0.243460 -vt 0.760543 0.311600 -vt 0.735405 0.254363 -vt 0.760541 0.251637 -vt 0.735406 0.314326 -vt 0.760543 0.314325 -vt 0.735405 0.251637 -vt 0.735407 0.322503 -vt 0.760543 0.322502 -vt 0.735406 0.282982 -vt 0.760542 0.281618 -vt 0.760542 0.282981 -vt 0.519034 0.454682 -vt 0.466452 0.458027 -vt 0.466452 0.454682 -vt 0.519034 0.451337 -vt 0.466452 0.451337 -vt 0.466452 0.447992 -vt 0.519034 0.447992 -vt 0.466452 0.444647 -vt 0.519034 0.444647 -vt 0.466452 0.441302 -vt 0.519034 0.441302 -vt 0.466452 0.437957 -vt 0.519034 0.437957 -vt 0.466452 0.434612 -vt 0.519034 0.434612 -vt 0.519034 0.474892 -vt 0.466452 0.471407 -vt 0.519034 0.471407 -vt 0.466452 0.468062 -vt 0.519034 0.468062 -vt 0.466452 0.464717 -vt 0.519034 0.464717 -vt 0.466452 0.461372 -vt 0.519034 0.461372 -vt 0.519034 0.458027 -vt 0.512086 0.691831 -vt 0.459632 0.694517 -vt 0.171690 0.723271 -vt 0.131391 0.725979 -vt 0.539360 0.225481 -vt 0.539266 0.228848 -vt 0.232419 0.719238 -vt 0.199558 0.722117 -vt 0.243889 0.718070 -vt 0.091098 0.727938 -vt 0.072459 0.726548 -vt 0.072679 0.414413 -vt 0.050089 0.419828 -vt 0.050199 0.722678 -vt 0.042158 0.720362 -vt 0.042030 0.422783 -vt 0.029046 0.428747 -vt 0.022343 0.712987 -vt 0.005031 0.712367 -vt 0.516407 0.821044 -vt 0.638372 0.818962 -vt 0.638380 0.820833 -vt 0.709128 0.817090 -vt 0.637837 0.814401 -vt 0.709145 0.813982 -vt 0.022366 0.431815 -vt 0.004766 0.433773 -vt 0.327100 0.701304 -vt 0.718985 0.820671 -vt 0.715790 0.823828 -vt 0.715791 0.820673 -vt 0.304478 0.710086 -vt 0.276532 0.713926 -vt 0.091531 0.412250 -vt 0.029079 0.715491 -vt 0.539425 0.224360 -vt 0.539360 0.223238 -vt 0.519034 0.425232 -vt 0.466452 0.414917 -vt 0.638372 0.817090 -vt 0.518004 0.813861 -vt 0.529381 0.461372 -vt 0.529381 0.458027 -vt 0.529381 0.464717 -vt 0.529381 0.468062 -vt 0.529381 0.471407 -vt 0.529381 0.474892 -vt 0.529381 0.437957 -vt 0.529381 0.434612 -vt 0.529381 0.441302 -vt 0.529381 0.444647 -vt 0.529381 0.447992 -vt 0.529381 0.451337 -vt 0.529381 0.454682 -vt 0.529380 0.401162 -vt 0.529380 0.404507 -vt 0.529380 0.397817 -vt 0.529380 0.394472 -vt 0.529380 0.391127 -vt 0.529380 0.387641 -vt 0.529381 0.424577 -vt 0.529381 0.427922 -vt 0.529381 0.421232 -vt 0.529380 0.417887 -vt 0.529380 0.414542 -vt 0.529380 0.411197 -vt 0.529380 0.407852 -vt 0.735406 0.289796 -vt 0.760542 0.289795 -vt 0.735406 0.276168 -vt 0.760542 0.276167 -vt 0.760542 0.287069 -vt 0.735406 0.278893 -vt 0.760542 0.278893 -vt 0.735406 0.284344 -vt 0.760542 0.284344 -vt 0.735406 0.280256 -vt 0.760542 0.280255 -vt 0.521467 0.432940 -vt 0.529381 0.432939 -vt 0.459087 0.238009 -vt 0.519034 0.356624 -vt 0.076613 0.771913 -vt 0.121664 0.322595 -vt 0.154195 0.381187 -vt 0.068375 0.765912 -vt 0.062479 0.376119 -vt 0.073453 0.366646 -vt 0.095750 0.347479 -vt 0.119873 0.754781 -vt 0.098902 0.787636 -vt 0.065395 0.373740 -vt 0.058238 0.379707 -vt 0.060978 0.381185 -vt 0.149089 0.752357 -vt 0.124403 0.808027 -vt 0.063538 0.759155 -vt 0.061027 0.760793 -vt 0.058742 0.759553 -vt 0.719144 0.673987 -vt 0.783581 0.672233 -vt 0.043059 0.743431 -vt 0.797610 0.670747 -vt 0.782080 0.667917 -vt 0.805021 0.667062 -vt 0.622754 0.225683 -vt 0.633511 0.224453 -vt 0.633501 0.225731 -vt 0.696719 0.226072 -vt 0.736493 0.224832 -vt 0.736481 0.226703 -vt 0.736494 0.222961 -vt 0.698031 0.219875 -vt 0.733692 0.218834 -vt 0.622763 0.223145 -vt 0.633451 0.219446 -vt 0.633510 0.223175 -vt 0.662890 0.223238 -vt 0.696729 0.223299 -vt 0.662880 0.225884 -vt 0.696728 0.224685 -vt 0.613379 0.223205 -vt 0.617079 0.219494 -vt 0.617076 0.223195 -vt 0.613366 0.225561 -vt 0.617077 0.224395 -vt 0.617068 0.225594 -vt 0.662732 0.229627 -vt 0.633414 0.229460 -vt 0.618970 0.229334 -vt 0.618993 0.225625 -vt 0.619001 0.223177 -vt 0.622753 0.224414 -vt 0.619001 0.224401 -vt 0.610677 0.225491 -vt 0.783579 0.670841 -vt 0.722551 0.667622 -vt 0.064977 0.759035 -vt 0.063853 0.762837 -vt 0.610682 0.224370 -vt 0.762890 0.132791 -vt 0.765638 0.131501 -vt 0.765524 0.132833 -vt 0.746245 0.141164 -vt 0.749033 0.139703 -vt 0.747416 0.141929 -vt 0.765407 0.171195 -vt 0.762846 0.169942 -vt 0.765328 0.169965 -vt 0.747986 0.138806 -vt 0.750931 0.137748 -vt 0.750027 0.136726 -vt 0.753053 0.136096 -vt 0.768001 0.170853 -vt 0.767764 0.169635 -vt 0.779901 0.161165 -vt 0.779418 0.164062 -vt 0.778414 0.163236 -vt 0.782283 0.159435 -vt 0.781103 0.158903 -vt 0.783232 0.156842 -vt 0.781978 0.156483 -vt 0.782514 0.153988 -vt 0.782700 0.151477 -vt 0.783782 0.154160 -vt 0.782062 0.146558 -vt 0.783790 0.148826 -vt 0.782541 0.148990 -vt 0.782832 0.144986 -vt 0.781652 0.145392 -vt 0.770546 0.170186 -vt 0.770146 0.168997 -vt 0.773025 0.169163 -vt 0.772456 0.168020 -vt 0.775380 0.167782 -vt 0.774650 0.166716 -vt 0.777532 0.166063 -vt 0.776657 0.165105 -vt 0.768421 0.131956 -vt 0.768119 0.133239 -vt 0.770600 0.133988 -vt 0.773538 0.133919 -vt 0.772928 0.135046 -vt 0.775849 0.135364 -vt 0.775082 0.136412 -vt 0.777044 0.138054 -vt 0.777943 0.137135 -vt 0.778741 0.139941 -vt 0.779744 0.139165 -vt 0.780148 0.142006 -vt 0.781814 0.142558 -vt 0.781259 0.144219 -vt 0.780696 0.143117 -vt 0.752308 0.134976 -vt 0.755341 0.134773 -vt 0.757346 0.132516 -vt 0.757760 0.133769 -vt 0.760049 0.131811 -vt 0.760290 0.133107 -vt 0.749798 0.067366 -vt 0.747171 0.063591 -vt 0.768114 0.054603 -vt 0.713519 0.156903 -vt 0.745493 0.154592 -vt 0.745493 0.156903 -vt 0.713519 0.184643 -vt 0.745493 0.182331 -vt 0.713519 0.159215 -vt 0.745493 0.159215 -vt 0.713519 0.182331 -vt 0.745493 0.180020 -vt 0.713519 0.161527 -vt 0.745493 0.161527 -vt 0.713519 0.177708 -vt 0.745493 0.177708 -vt 0.713519 0.175396 -vt 0.745493 0.173085 -vt 0.745493 0.175396 -vt 0.713519 0.163838 -vt 0.745493 0.163838 -vt 0.713519 0.173085 -vt 0.745493 0.170773 -vt 0.713519 0.166150 -vt 0.745493 0.166150 -vt 0.713519 0.169617 -vt 0.745493 0.168461 -vt 0.745493 0.169617 -vt 0.713519 0.167306 -vt 0.745493 0.167306 -vt 0.713519 0.198513 -vt 0.745493 0.196201 -vt 0.745493 0.198513 -vt 0.713519 0.149968 -vt 0.745493 0.147657 -vt 0.745493 0.149969 -vt 0.713519 0.140722 -vt 0.745493 0.138410 -vt 0.745493 0.140722 -vt 0.713519 0.193890 -vt 0.745493 0.193889 -vt 0.713519 0.133787 -vt 0.745493 0.131476 -vt 0.745493 0.133787 -vt 0.713519 0.143034 -vt 0.745493 0.143034 -vt 0.745493 0.191578 -vt 0.713519 0.203136 -vt 0.745493 0.200824 -vt 0.745493 0.203136 -vt 0.713519 0.145345 -vt 0.745493 0.145345 -vt 0.713519 0.191578 -vt 0.745493 0.189266 -vt 0.745493 0.136099 -vt 0.713519 0.189266 -vt 0.713519 0.138410 -vt 0.713519 0.152280 -vt 0.745493 0.152280 -vt 0.713519 0.200825 -vt 0.713519 0.154592 -vt 0.760421 0.133789 -vt 0.762992 0.134798 -vt 0.760670 0.135077 -vt 0.762927 0.133489 -vt 0.757982 0.134427 -vt 0.758405 0.135671 -vt 0.756243 0.136571 -vt 0.755647 0.135389 -vt 0.753449 0.136682 -vt 0.754213 0.137784 -vt 0.780116 0.143407 -vt 0.779498 0.144959 -vt 0.779004 0.143965 -vt 0.780651 0.144475 -vt 0.778215 0.140354 -vt 0.778505 0.142975 -vt 0.777229 0.141143 -vt 0.779581 0.142340 -vt 0.776568 0.138547 -vt 0.775687 0.139472 -vt 0.781888 0.149076 -vt 0.780787 0.151461 -vt 0.780652 0.149238 -vt 0.782034 0.151474 -vt 0.773928 0.137998 -vt 0.774683 0.136959 -vt 0.772611 0.135634 -vt 0.771996 0.136773 -vt 0.769913 0.135831 -vt 0.770359 0.134627 -vt 0.767966 0.133915 -vt 0.767689 0.135195 -vt 0.765464 0.133537 -vt 0.765352 0.134856 -vt 0.777890 0.162805 -vt 0.775317 0.163649 -vt 0.776908 0.161992 -vt 0.776194 0.164605 -vt 0.773515 0.165098 -vt 0.774256 0.166149 -vt 0.771565 0.166295 -vt 0.772152 0.167421 -vt 0.769511 0.167200 -vt 0.769931 0.168374 -vt 0.767395 0.167800 -vt 0.767637 0.169003 -vt 0.781040 0.145603 -vt 0.780221 0.147060 -vt 0.779863 0.146008 -vt 0.781430 0.146729 -vt 0.780591 0.153697 -vt 0.781848 0.153892 -vt 0.780082 0.155931 -vt 0.781325 0.156295 -vt 0.779290 0.158106 -vt 0.780471 0.158623 -vt 0.778235 0.160143 -vt 0.779332 0.160814 -vt 0.765287 0.169309 -vt 0.765218 0.168069 -vt 0.751411 0.138283 -vt 0.752333 0.139294 -vt 0.750637 0.141062 -vt 0.749591 0.140174 -vt 0.762920 0.169282 -vt 0.762999 0.168046 -vt 0.749176 0.143036 -vt 0.748039 0.142291 -vt 0.466452 0.423258 -vt 0.519034 0.428350 -vt 0.537256 0.224359 -vt 0.537187 0.223249 -vt 0.028395 0.714121 -vt 0.021400 0.711489 -vt 0.304186 0.704395 -vt 0.326938 0.698147 -vt 0.131300 0.725279 -vt 0.090978 0.727278 -vt 0.091445 0.412893 -vt 0.072593 0.415161 -vt 0.243715 0.714692 -vt 0.276297 0.709348 -vt 0.049988 0.420842 -vt 0.041930 0.423941 -vt 0.709117 0.820703 -vt 0.637846 0.823522 -vt 0.712766 0.203136 -vt 0.661059 0.102757 -vt 0.712766 0.102757 -vt 0.021520 0.433415 -vt 0.003303 0.435469 -vt 0.072335 0.725821 -vt 0.050034 0.721699 -vt 0.712466 0.817108 -vt 0.712472 0.813963 -vt 0.003480 0.710820 -vt 0.028453 0.430197 -vt 0.199451 0.720272 -vt 0.171642 0.722600 -vt 0.041978 0.719242 -vt 0.232265 0.716305 -vt 0.537187 0.225470 -vt 0.537062 0.228823 -vt 0.531777 0.238009 -vt 0.637022 0.315777 -vt 0.530133 0.240338 -vt 0.690543 0.214187 -vt 0.533678 0.214767 -vt 0.532423 0.210720 -vt 0.744476 0.215496 -vt 0.747693 0.211187 -vt 0.533344 0.232017 -vt 0.530146 0.234777 -vt 0.530228 0.231927 -vt 0.530146 0.104983 -vt 0.530159 0.102132 -vt 0.692500 0.238009 -vt 0.679174 0.345848 -vt 0.766925 0.240024 -vt 0.761295 0.338372 -vt 0.763032 0.238009 -vt 0.773223 0.244018 -vt 0.768615 0.341279 -vt 0.769323 0.242017 -vt 0.765521 0.340899 -vt 0.539658 0.234781 -vt 0.536461 0.232018 -vt 0.539578 0.231930 -vt 0.533347 0.237255 -vt 0.743845 0.203888 -vt 0.690389 0.211104 -vt 0.690766 0.207191 -vt 0.747504 0.207796 -vt 0.531224 0.207706 -vt 0.530146 0.203888 -vt 0.171548 0.721256 -vt 0.131210 0.724579 -vt 0.131119 0.723878 -vt 0.171594 0.721928 -vt 0.535043 0.225456 -vt 0.532647 0.228661 -vt 0.530146 0.225487 -vt 0.534851 0.228764 -vt 0.232110 0.713371 -vt 0.199228 0.716581 -vt 0.231954 0.710437 -vt 0.199340 0.718427 -vt 0.243539 0.711313 -vt 0.243364 0.707934 -vt 0.090732 0.725959 -vt 0.072210 0.725095 -vt 0.072085 0.724368 -vt 0.090856 0.726619 -vt 0.049887 0.421855 -vt 0.072420 0.416659 -vt 0.049786 0.422869 -vt 0.072506 0.415910 -vt 0.049705 0.719741 -vt 0.041798 0.718121 -vt 0.041618 0.716999 -vt 0.049870 0.720720 -vt 0.027860 0.431647 -vt 0.041728 0.426257 -vt 0.027267 0.433097 -vt 0.041829 0.425099 -vt 0.019515 0.708491 -vt 0.001928 0.709273 -vt 0.000376 0.707726 -vt 0.020458 0.709990 -vt 0.718981 0.817102 -vt 0.715809 0.813952 -vt 0.719149 0.813944 -vt 0.715802 0.817107 -vt 0.001839 0.437165 -vt 0.019827 0.436615 -vt 0.000376 0.438861 -vt 0.020673 0.435015 -vt 0.303894 0.698703 -vt 0.275826 0.700192 -vt 0.303602 0.693012 -vt 0.276061 0.704770 -vt 0.091272 0.414180 -vt 0.091359 0.413537 -vt 0.326776 0.694989 -vt 0.326614 0.691831 -vt 0.027028 0.711380 -vt 0.027712 0.712750 -vt 0.535043 0.223263 -vt 0.530219 0.224359 -vt 0.530146 0.223232 -vt 0.535115 0.224359 -vt 0.466452 0.431598 -vt 0.519034 0.431467 -vt 0.712455 0.820679 -vt 0.709126 0.823811 -vt 0.712452 0.823824 -vt 0.536368 0.455764 -vt 0.539486 0.458846 -vt 0.536368 0.458846 -vt 0.533251 0.458846 -vt 0.533251 0.455764 -vt 0.530133 0.458846 -vt 0.537062 0.219896 -vt 0.534851 0.219954 -vt 0.532647 0.220057 -vt 0.715789 0.818890 -vt 0.718808 0.818887 -vt 0.712452 0.818893 -vt 0.539266 0.219871 -vt 0.713519 0.170773 -vt 0.610806 0.219621 -vt 0.719139 0.672429 -vt 0.619004 0.219464 -vt 0.662769 0.219494 -vt 0.516403 0.818910 -vt 0.553006 0.219890 -vt 0.709112 0.818896 -vt 0.833300 0.684945 -vt 0.885443 0.684946 -vt 0.634845 0.678914 -vt 0.687523 0.678911 -vt 0.583874 0.219726 -vt 0.747461 0.678807 -vt 0.013213 0.951734 -vt 0.085121 0.970321 -vt 0.108064 0.973418 -vt 0.053123 0.963775 -vt 0.154441 0.977127 -vt 0.713519 0.168462 -vt 0.613378 0.224380 -vt 0.617047 0.229291 -vt 0.697996 0.229505 -vt 0.733648 0.230809 -vt 0.722570 0.677046 -vt 0.782104 0.676552 -vt 0.529381 0.431267 -vt 0.735406 0.281619 -vt 0.518009 0.823829 -vt 0.559014 0.690832 -vt 0.721545 0.690974 -vt 0.805021 0.677357 -vt 0.747460 0.691079 -vt 0.600757 0.722669 -vt 0.714505 0.711544 -vt 0.199780 0.979459 -vt 0.199698 0.980627 -vt 0.714425 0.710385 -vt 0.746238 0.445957 -vt 0.719185 0.734042 -vt 0.737955 0.446818 -vt 0.738773 0.450041 -vt 0.736404 0.447034 -vt 0.204522 0.956768 -vt 0.065391 0.763885 -vt 0.060979 0.377343 -vt 0.758302 0.468147 -vt 0.761198 0.464344 -vt 0.756426 0.472540 -vt 0.759225 0.474500 -vt 0.755812 0.473536 -vt 0.544749 0.551393 -vt 0.528348 0.554374 -vt 0.527961 0.549198 -vt 0.545735 0.518608 -vt 0.512072 0.508997 -vt 0.512114 0.508304 -vt 0.947640 0.510360 -vt 0.915019 0.509619 -vt 0.947099 0.498606 -vt 0.544787 0.546816 -vt 0.527404 0.543756 -vt 0.545799 0.517930 -vt 0.512155 0.507621 -vt 0.695181 0.475654 -vt 0.662225 0.509486 -vt 0.661192 0.476123 -vt 0.933958 0.552284 -vt 0.915385 0.551097 -vt 0.933661 0.548898 -vt 0.544726 0.555772 -vt 0.528618 0.559141 -vt 0.769067 0.476673 -vt 0.740555 0.509447 -vt 0.740574 0.475955 -vt 0.915401 0.556626 -vt 0.934942 0.555537 -vt 0.915387 0.559126 -vt 0.936570 0.558560 -vt 0.544846 0.542185 -vt 0.526534 0.538195 -vt 0.545669 0.519284 -vt 0.512030 0.509691 -vt 0.915362 0.561426 -vt 0.938770 0.561229 -vt 0.544716 0.559816 -vt 0.706963 0.475645 -vt 0.695703 0.509396 -vt 0.945312 0.531894 -vt 0.915129 0.536054 -vt 0.948578 0.530861 -vt 0.546285 0.510435 -vt 0.512792 0.498314 -vt 0.633603 0.510063 -vt 0.632805 0.477090 -vt 0.942162 0.533634 -vt 0.915105 0.537130 -vt 0.707378 0.509387 -vt 0.948480 0.527676 -vt 0.915233 0.526337 -vt 0.948035 0.518991 -vt 0.939290 0.536031 -vt 0.915101 0.538795 -vt 0.545599 0.519959 -vt 0.515055 0.511557 -vt 0.915139 0.533480 -vt 0.936903 0.538921 -vt 0.915146 0.540822 -vt 0.935143 0.542113 -vt 0.915219 0.543054 -vt 0.545534 0.521225 -vt 0.517784 0.514364 -vt 0.589928 0.510741 -vt 0.589024 0.478409 -vt 0.934056 0.545475 -vt 0.915291 0.545559 -vt 0.915197 0.519237 -vt 0.915348 0.548275 -vt 0.545430 0.523281 -vt 0.520225 0.518037 -vt 0.545302 0.526053 -vt 0.522329 0.522427 -vt 0.791865 0.477444 -vt 0.768921 0.509653 -vt 0.545166 0.529449 -vt 0.524059 0.527365 -vt 0.545676 0.478457 -vt 0.545038 0.533358 -vt 0.525384 0.532675 -vt 0.544930 0.537650 -vt 0.915310 0.478460 -vt 0.791951 0.509944 -vt 0.785347 0.822567 -vt 0.796037 0.820991 -vt 0.796607 0.822424 -vt 0.766637 0.821402 -vt 0.766342 0.822848 -vt 0.753123 0.470420 -vt 0.752184 0.471392 -vt 0.743686 0.452525 -vt 0.746360 0.456688 -vt 0.742005 0.453240 -vt 0.721408 0.820480 -vt 0.719914 0.821716 -vt 0.749790 0.467655 -vt 0.748542 0.468608 -vt 0.794688 0.230790 -vt 0.780587 0.229299 -vt 0.794693 0.229283 -vt 0.794710 0.226597 -vt 0.794701 0.227889 -vt 0.780608 0.226552 -vt 0.780598 0.227889 -vt 0.738071 0.225964 -vt 0.739821 0.227126 -vt 0.742451 0.228419 -vt 0.746142 0.229876 -vt 0.780574 0.230809 -vt 0.803045 0.230809 -vt 0.805575 0.229444 -vt 0.807567 0.228097 -vt 0.808520 0.226772 -vt 0.753093 0.464063 -vt 0.757966 0.461853 -vt 0.755788 0.466415 -vt 0.732678 0.813370 -vt 0.767091 0.817431 -vt 0.727078 0.816616 -vt 0.754350 0.446723 -vt 0.750554 0.450145 -vt 0.747938 0.447907 -vt 0.740411 0.449577 -vt 0.781232 0.813478 -vt 0.756851 0.448334 -vt 0.754318 0.452717 -vt 0.752703 0.445383 -vt 0.759532 0.473470 -vt 0.759714 0.463585 -vt 0.785099 0.821132 -vt 0.748064 0.455727 -vt 0.915399 0.553916 -vt 0.792105 0.551111 -vt 0.789223 0.553935 -vt 0.786247 0.556644 -vt 0.783185 0.559134 -vt 0.779885 0.561427 -vt 0.792372 0.536203 -vt 0.792373 0.537245 -vt 0.792352 0.538871 -vt 0.792302 0.540872 -vt 0.792245 0.543093 -vt 0.792189 0.545589 -vt 0.792141 0.548297 -vt 0.768759 0.545352 -vt 0.768847 0.561581 -vt 0.768717 0.540535 -vt 0.768835 0.556699 -vt 0.768697 0.537302 -vt 0.768782 0.548129 -vt 0.768804 0.551013 -vt 0.768736 0.542788 -vt 0.768844 0.559294 -vt 0.768703 0.538682 -vt 0.768822 0.553906 -vt 0.633778 0.522927 -vt 0.662368 0.522413 -vt 0.662371 0.524585 -vt 0.695788 0.533794 -vt 0.707335 0.531933 -vt 0.707327 0.535029 -vt 0.695793 0.537481 -vt 0.707322 0.538563 -vt 0.634151 0.533836 -vt 0.662377 0.531047 -vt 0.662385 0.535084 -vt 0.695796 0.541481 -vt 0.707321 0.542396 -vt 0.634371 0.543134 -vt 0.662395 0.539458 -vt 0.662406 0.544000 -vt 0.695799 0.545639 -vt 0.707320 0.546383 -vt 0.634447 0.547872 -vt 0.662416 0.548539 -vt 0.695800 0.549797 -vt 0.707320 0.550368 -vt 0.695801 0.553795 -vt 0.707320 0.554201 -vt 0.695802 0.557478 -vt 0.707320 0.557732 -vt 0.695803 0.560706 -vt 0.707320 0.560827 -vt 0.633695 0.520682 -vt 0.662364 0.521073 -vt 0.695748 0.525932 -vt 0.707373 0.526343 -vt 0.707361 0.527505 -vt 0.634020 0.529634 -vt 0.662373 0.527501 -vt 0.589565 0.547480 -vt 0.589565 0.552004 -vt 0.589565 0.556256 -vt 0.589565 0.538261 -vt 0.589565 0.542844 -vt 0.589564 0.533896 -vt 0.589563 0.529905 -vt 0.589560 0.526431 -vt 0.589555 0.523599 -vt 0.589550 0.521506 -vt 0.589544 0.520208 -vt 0.589565 0.560086 -vt 0.695778 0.530561 -vt 0.707347 0.529392 -vt 0.740515 0.536375 -vt 0.740475 0.532564 -vt 0.768695 0.536452 -vt 0.740496 0.534189 -vt 0.662434 0.560441 -vt 0.740542 0.561217 -vt 0.634547 0.560301 -vt 0.662431 0.556918 -vt 0.740542 0.558554 -vt 0.634532 0.556624 -vt 0.662425 0.552900 -vt 0.740542 0.555516 -vt 0.634500 0.552427 -vt 0.740542 0.552220 -vt 0.740541 0.548794 -vt 0.740539 0.545368 -vt 0.634270 0.538394 -vt 0.740535 0.542073 -vt 0.740528 0.539037 -vt 0.633891 0.525950 -vt 0.695764 0.527906 -vt 0.740457 0.531563 -vt 0.695735 0.524716 -vt 0.633648 0.519300 -vt 0.792020 0.520481 -vt 0.589721 0.517910 -vt 0.633612 0.517387 -vt 0.707373 0.517605 -vt 0.740490 0.519749 -vt 0.662331 0.516263 -vt 0.695722 0.517119 -vt 0.768813 0.521853 -vt 0.792086 0.525705 -vt 0.768783 0.526719 -vt 0.662349 0.517869 -vt 0.695727 0.519653 -vt 0.740478 0.523688 -vt 0.707373 0.520518 -vt 0.633620 0.518025 -vt 0.589662 0.518672 -vt 0.792199 0.530943 -vt 0.589603 0.519439 -vt 0.633631 0.518662 -vt 0.740467 0.527626 -vt 0.707372 0.523431 -vt 0.662359 0.519472 -vt 0.695731 0.522185 -vt 0.768745 0.531586 -vt 0.746236 0.106095 -vt 0.747865 0.107446 -vt 0.746233 0.107455 -vt 0.747872 0.105968 -vt 0.746224 0.108815 -vt 0.747646 0.110395 -vt 0.746032 0.110162 -vt 0.747858 0.108928 -vt 0.718336 0.122147 -vt 0.715402 0.121366 -vt 0.716351 0.120266 -vt 0.717567 0.123590 -vt 0.716276 0.094940 -vt 0.717494 0.091885 -vt 0.718324 0.093106 -vt 0.715173 0.093997 -vt 0.720563 0.091515 -vt 0.719995 0.089983 -vt 0.723007 0.090294 -vt 0.722603 0.088334 -vt 0.720564 0.123711 -vt 0.719895 0.125590 -vt 0.736225 0.123943 -vt 0.734297 0.126646 -vt 0.733707 0.124961 -vt 0.737021 0.125500 -vt 0.738560 0.122565 -vt 0.739545 0.123963 -vt 0.741805 0.122068 -vt 0.740641 0.120843 -vt 0.743756 0.119855 -vt 0.742443 0.118826 -vt 0.745362 0.117379 -vt 0.743928 0.116563 -vt 0.746595 0.114694 -vt 0.745065 0.114106 -vt 0.747436 0.111858 -vt 0.745833 0.111508 -vt 0.723038 0.124813 -vt 0.722682 0.126689 -vt 0.725662 0.125498 -vt 0.725549 0.127378 -vt 0.728361 0.125751 -vt 0.728490 0.127596 -vt 0.731066 0.125569 -vt 0.731430 0.127349 -vt 0.737068 0.089416 -vt 0.738599 0.092367 -vt 0.736256 0.091004 -vt 0.739598 0.090942 -vt 0.741861 0.092831 -vt 0.740685 0.094080 -vt 0.743811 0.095041 -vt 0.742489 0.096094 -vt 0.745413 0.097517 -vt 0.743971 0.098356 -vt 0.746636 0.100203 -vt 0.745103 0.100814 -vt 0.747459 0.103039 -vt 0.745863 0.103411 -vt 0.725630 0.089567 -vt 0.725536 0.087653 -vt 0.728340 0.089278 -vt 0.728488 0.087392 -vt 0.731061 0.089427 -vt 0.731444 0.087609 -vt 0.733721 0.090010 -vt 0.734328 0.088290 -vt 0.522673 0.745640 -vt 0.524772 0.745771 -vt 0.522727 0.746007 -vt 0.524837 0.746665 -vt 0.522787 0.746744 -vt 0.516471 0.747985 -vt 0.523554 0.741565 -vt 0.521685 0.742771 -vt 0.521586 0.742599 -vt 0.521865 0.743119 -vt 0.524026 0.742663 -vt 0.522029 0.743472 -vt 0.516434 0.746193 -vt 0.000494 0.944357 -vt 0.003378 0.946227 -vt 0.516626 0.747715 -vt 0.527394 0.744423 -vt 0.530235 0.744025 -vt 0.008710 0.945810 -vt 0.006567 0.945777 -vt 0.006652 0.945409 -vt 0.011623 0.945188 -vt 0.004016 0.944550 -vt 0.516720 0.746806 -vt 0.519997 0.746119 -vt 0.516656 0.747643 -vt 0.010258 0.950637 -vt 0.013326 0.951385 -vt 0.520092 0.747112 -vt 0.516750 0.747035 -vt 0.520086 0.746863 -vt 0.010676 0.949537 -vt 0.013604 0.950413 -vt 0.000685 0.943153 -vt 0.000638 0.943004 -vt 0.003506 0.945998 -vt 0.000733 0.943618 -vt 0.527525 0.745499 -vt 0.530363 0.745259 -vt 0.516702 0.746730 -vt 0.519943 0.745874 -vt 0.000379 0.942562 -vt 0.524812 0.746218 -vt 0.522765 0.746375 -vt 0.516592 0.746441 -vt 0.008511 0.946709 -vt 0.006466 0.946144 -vt 0.006349 0.946509 -vt 0.008245 0.947604 -vt 0.006217 0.946871 -vt 0.008086 0.948050 -vt 0.006068 0.947230 -vt 0.005902 0.947586 -vt 0.007713 0.948938 -vt 0.005720 0.947937 -vt 0.007607 0.949158 -vt 0.005519 0.948285 -vt 0.005620 0.948110 -vt 0.526591 0.741191 -vt 0.516744 0.746958 -vt 0.008909 0.944006 -vt 0.006815 0.944296 -vt 0.006838 0.943923 -vt 0.523659 0.741783 -vt 0.008842 0.944909 -vt 0.006776 0.944668 -vt 0.006722 0.945039 -vt 0.011488 0.946274 -vt 0.516750 0.747190 -vt 0.516752 0.747113 -vt 0.524553 0.744434 -vt 0.522605 0.745273 -vt 0.522522 0.744909 -vt 0.000727 0.943384 -vt 0.010475 0.950086 -vt 0.522422 0.744547 -vt 0.522307 0.744185 -vt 0.524446 0.743989 -vt 0.524184 0.743103 -vt 0.522176 0.743827 -vt 0.529219 0.739364 -vt 0.526179 0.740103 -vt 0.530426 0.746495 -vt 0.527566 0.746037 -vt 0.014269 0.947305 -vt 0.011396 0.946817 -vt 0.011161 0.947904 -vt 0.013911 0.949171 -vt 0.011017 0.948447 -vt 0.010856 0.948991 -vt 0.521487 0.742427 -vt 0.011691 0.944102 -vt 0.011665 0.944645 -vt 0.014530 0.944811 -vt 0.526394 0.740649 -vt 0.519877 0.745630 -vt 0.516681 0.746656 -vt 0.524715 0.745325 -vt 0.527303 0.743886 -vt 0.530046 0.742791 -vt 0.003894 0.945044 -vt 0.000636 0.944076 -vt 0.527071 0.742809 -vt 0.529797 0.741560 -vt 0.526929 0.742271 -vt 0.003815 0.945287 -vt 0.516655 0.746583 -vt 0.516593 0.747785 -vt 0.527467 0.744961 -vt 0.008619 0.946259 -vt 0.011287 0.947360 -vt 0.008387 0.947157 -vt 0.007909 0.948494 -vt 0.003087 0.946670 -vt 0.007500 0.949380 -vt 0.010368 0.950361 -vt 0.011700 0.943558 -vt 0.008884 0.944457 -vt 0.526287 0.740377 -vt 0.008784 0.945360 -vt 0.011564 0.945731 -vt 0.524642 0.744879 -vt 0.527195 0.743348 -vt 0.524324 0.743546 -vt 0.526769 0.741732 -vt 0.523852 0.742222 -vt 0.523448 0.741346 -vt 0.527591 0.746575 -vt 0.747856 0.340667 -vt 0.735488 0.340451 -vt 0.747859 0.340451 -vt 0.551203 0.456806 -vt 0.551140 0.456673 -vt 0.551237 0.456770 -vt 0.747796 0.344553 -vt 0.735429 0.344337 -vt 0.747799 0.344337 -vt 0.747866 0.333224 -vt 0.735499 0.333008 -vt 0.747869 0.333008 -vt 0.747849 0.341099 -vt 0.735482 0.340883 -vt 0.747852 0.340883 -vt 0.747812 0.336678 -vt 0.735445 0.336462 -vt 0.747816 0.336462 -vt 0.747846 0.341315 -vt 0.735472 0.341531 -vt 0.735475 0.341315 -vt 0.747802 0.337325 -vt 0.735435 0.337109 -vt 0.747806 0.337109 -vt 0.747789 0.338188 -vt 0.735422 0.337973 -vt 0.747792 0.337973 -vt 0.747826 0.335814 -vt 0.735458 0.335598 -vt 0.747829 0.335598 -vt 0.747802 0.344121 -vt 0.735435 0.343905 -vt 0.747806 0.343905 -vt 0.735439 0.343689 -vt 0.747809 0.343689 -vt 0.747836 0.341962 -vt 0.735468 0.341747 -vt 0.747839 0.341747 -vt 0.747813 0.343473 -vt 0.735445 0.343257 -vt 0.747816 0.343257 -vt 0.735492 0.340236 -vt 0.747862 0.340236 -vt 0.747836 0.335167 -vt 0.735468 0.334951 -vt 0.747839 0.334951 -vt 0.735472 0.334735 -vt 0.747842 0.334735 -vt 0.747832 0.335382 -vt 0.735465 0.335167 -vt 0.747819 0.343042 -vt 0.735452 0.342826 -vt 0.747822 0.342826 -vt 0.735475 0.334519 -vt 0.747846 0.334519 -vt 0.747832 0.342178 -vt 0.735465 0.341962 -vt 0.735485 0.340667 -vt 0.747822 0.336030 -vt 0.735455 0.335814 -vt 0.747859 0.333656 -vt 0.735492 0.333440 -vt 0.747862 0.333440 -vt 0.735448 0.336246 -vt 0.747819 0.336246 -vt 0.747852 0.334087 -vt 0.735485 0.333871 -vt 0.747856 0.333871 -vt 0.735455 0.342610 -vt 0.747826 0.342610 -vt 0.747799 0.337541 -vt 0.735432 0.337325 -vt 0.735478 0.341099 -vt 0.735442 0.343473 -vt 0.747809 0.336893 -vt 0.735442 0.336678 -vt 0.735458 0.342394 -vt 0.747829 0.342394 -vt 0.735495 0.333224 -vt 0.747775 0.345848 -vt 0.735408 0.345632 -vt 0.747779 0.345632 -vt 0.747783 0.345416 -vt 0.735415 0.345200 -vt 0.747786 0.345200 -vt 0.747842 0.341531 -vt 0.747793 0.344768 -vt 0.735425 0.344553 -vt 0.735412 0.345416 -vt 0.735432 0.344121 -vt 0.735452 0.336030 -vt 0.735462 0.335382 -vt 0.735415 0.338404 -vt 0.735419 0.338188 -vt 0.735438 0.336893 -vt 0.735495 0.340020 -vt 0.747866 0.340020 -vt 0.747789 0.344984 -vt 0.735422 0.344768 -vt 0.747849 0.334303 -vt 0.735478 0.334303 -vt 0.747775 0.339052 -vt 0.735408 0.338836 -vt 0.747779 0.338836 -vt 0.735482 0.334087 -vt 0.747782 0.338620 -vt 0.747786 0.338404 -vt 0.747796 0.337757 -vt 0.735429 0.337541 -vt 0.735425 0.337757 -vt 0.735449 0.343042 -vt 0.735419 0.344984 -vt 0.735462 0.342178 -vt 0.735412 0.338620 -vt 0.735499 0.339804 -vt 0.747869 0.339804 -vt 0.735488 0.333656 -vt 0.551032 0.232075 -vt 0.550865 0.232288 -vt 0.550675 0.232086 -vt 0.551436 0.456623 -vt 0.551422 0.456474 -vt 0.551481 0.456601 -vt 0.551017 0.457155 -vt 0.550865 0.457175 -vt 0.550880 0.457118 -vt 0.551393 0.456975 -vt 0.551533 0.457069 -vt 0.551518 0.457086 -vt 0.550992 0.457307 -vt 0.550853 0.457235 -vt 0.550997 0.457255 -vt 0.551262 0.457322 -vt 0.551435 0.457290 -vt 0.551435 0.457313 -vt 0.550990 0.457359 -vt 0.550842 0.457391 -vt 0.550840 0.457359 -vt 0.551267 0.457250 -vt 0.551439 0.457245 -vt 0.551436 0.457268 -vt 0.551142 0.457834 -vt 0.550998 0.457866 -vt 0.551115 0.457793 -vt 0.551334 0.457661 -vt 0.551490 0.457596 -vt 0.551352 0.457689 -vt 0.551237 0.457947 -vt 0.551182 0.458084 -vt 0.551140 0.458045 -vt 0.551263 0.457377 -vt 0.551437 0.457382 -vt 0.551436 0.457393 -vt 0.551436 0.458094 -vt 0.551320 0.458187 -vt 0.551393 0.458069 -vt 0.550997 0.457462 -vt 0.550865 0.457542 -vt 0.550854 0.457483 -vt 0.551263 0.457340 -vt 0.551436 0.457324 -vt 0.551048 0.457659 -vt 0.550898 0.457656 -vt 0.551031 0.457611 -vt 0.550395 0.457667 -vt 0.550614 0.457682 -vt 0.550419 0.457747 -vt 0.551142 0.456883 -vt 0.551064 0.456758 -vt 0.551171 0.456844 -vt 0.551267 0.457467 -vt 0.551435 0.457427 -vt 0.551436 0.457450 -vt 0.550997 0.456852 -vt 0.551029 0.456804 -vt 0.551291 0.457568 -vt 0.551444 0.457494 -vt 0.551450 0.457516 -vt 0.551351 0.456675 -vt 0.551320 0.456530 -vt 0.551393 0.456648 -vt 0.550553 0.458051 -vt 0.550696 0.457885 -vt 0.550731 0.457949 -vt 0.550446 0.456893 -vt 0.550665 0.456898 -vt 0.550638 0.456966 -vt 0.551352 0.457028 -vt 0.551478 0.457140 -vt 0.551334 0.457057 -vt 0.551782 0.456524 -vt 0.551797 0.456370 -vt 0.551809 0.456522 -vt 0.550864 0.456279 -vt 0.551056 0.456385 -vt 0.551001 0.456432 -vt 0.551676 0.456538 -vt 0.551705 0.456383 -vt 0.551728 0.456529 -vt 0.551416 0.457767 -vt 0.551550 0.457663 -vt 0.551441 0.457789 -vt 0.551281 0.456010 -vt 0.551433 0.456169 -vt 0.551365 0.456197 -vt 0.551568 0.457677 -vt 0.551467 0.457811 -vt 0.550747 0.458320 -vt 0.550852 0.458129 -vt 0.550899 0.458184 -vt 0.551719 0.456804 -vt 0.551756 0.456974 -vt 0.551733 0.456975 -vt 0.550929 0.458492 -vt 0.551114 0.458377 -vt 0.550995 0.458541 -vt 0.551684 0.457908 -vt 0.551734 0.457742 -vt 0.551719 0.457913 -vt 0.551810 0.456802 -vt 0.551779 0.456974 -vt 0.551791 0.456801 -vt 0.551755 0.457916 -vt 0.551780 0.457743 -vt 0.551792 0.457917 -vt 0.551716 0.458838 -vt 0.551791 0.458641 -vt 0.551756 0.458846 -vt 0.551595 0.455904 -vt 0.551717 0.456089 -vt 0.551644 0.456105 -vt 0.551650 0.457900 -vt 0.551668 0.457729 -vt 0.551690 0.457735 -vt 0.551553 0.456853 -vt 0.551646 0.456996 -vt 0.551625 0.457004 -vt 0.551585 0.457878 -vt 0.551626 0.457712 -vt 0.551646 0.457721 -vt 0.551675 0.458831 -vt 0.551644 0.458613 -vt 0.551717 0.458628 -vt 0.551090 0.456968 -vt 0.550942 0.456953 -vt 0.550968 0.456902 -vt 0.551318 0.457086 -vt 0.551467 0.457160 -vt 0.551436 0.458767 -vt 0.551572 0.458594 -vt 0.551515 0.458791 -vt 0.551684 0.456810 -vt 0.551711 0.456978 -vt 0.551810 0.457916 -vt 0.551802 0.457740 -vt 0.551829 0.457915 -vt 0.551358 0.458739 -vt 0.551365 0.458520 -vt 0.551433 0.458548 -vt 0.551523 0.457848 -vt 0.551554 0.457864 -vt 0.551372 0.457001 -vt 0.551503 0.457103 -vt 0.551207 0.458671 -vt 0.551236 0.458455 -vt 0.551300 0.458489 -vt 0.551372 0.457716 -vt 0.551504 0.457614 -vt 0.551458 0.457180 -vt 0.551303 0.457117 -vt 0.551435 0.457405 -vt 0.551262 0.457396 -vt 0.551523 0.456869 -vt 0.551586 0.457027 -vt 0.551494 0.456887 -vt 0.551115 0.456925 -vt 0.551063 0.458588 -vt 0.551174 0.458417 -vt 0.550949 0.458236 -vt 0.550805 0.458380 -vt 0.551422 0.458243 -vt 0.551370 0.458216 -vt 0.550395 0.457050 -vt 0.550575 0.457178 -vt 0.550374 0.457131 -vt 0.550358 0.457506 -vt 0.550575 0.457540 -vt 0.550375 0.457587 -vt 0.551528 0.458136 -vt 0.551530 0.458288 -vt 0.551475 0.458267 -vt 0.551048 0.457059 -vt 0.551068 0.457012 -vt 0.551754 0.458634 -vt 0.551626 0.458168 -vt 0.551645 0.458322 -vt 0.551587 0.458306 -vt 0.551716 0.455879 -vt 0.551791 0.456076 -vt 0.551754 0.456083 -vt 0.551782 0.458194 -vt 0.551705 0.458334 -vt 0.551729 0.458188 -vt 0.551282 0.458707 -vt 0.550418 0.456971 -vt 0.550614 0.457035 -vt 0.551502 0.458573 -vt 0.551311 0.456704 -vt 0.551272 0.456562 -vt 0.551836 0.458197 -vt 0.551797 0.458347 -vt 0.551809 0.458195 -vt 0.551576 0.456564 -vt 0.551587 0.456411 -vt 0.551625 0.456550 -vt 0.551766 0.456374 -vt 0.551595 0.458813 -vt 0.551351 0.458042 -vt 0.551226 0.458121 -vt 0.551311 0.458013 -vt 0.551689 0.456982 -vt 0.551650 0.456817 -vt 0.551203 0.457912 -vt 0.551064 0.457959 -vt 0.551172 0.457874 -vt 0.551645 0.456396 -vt 0.551528 0.456581 -vt 0.551530 0.456429 -vt 0.551586 0.457690 -vt 0.551495 0.457830 -vt 0.551273 0.457981 -vt 0.551182 0.456633 -vt 0.551225 0.456596 -vt 0.551567 0.457040 -vt 0.551467 0.456906 -vt 0.551062 0.456129 -vt 0.551235 0.456263 -vt 0.551173 0.456300 -vt 0.550898 0.457061 -vt 0.550918 0.457006 -vt 0.551090 0.457750 -vt 0.550942 0.457764 -vt 0.551068 0.457705 -vt 0.551291 0.457149 -vt 0.551450 0.457202 -vt 0.550478 0.457902 -vt 0.550514 0.457977 -vt 0.551370 0.456501 -vt 0.550638 0.457752 -vt 0.550447 0.457825 -vt 0.550643 0.456527 -vt 0.550852 0.456589 -vt 0.550808 0.456646 -vt 0.551006 0.457513 -vt 0.550880 0.457600 -vt 0.550918 0.457711 -vt 0.550350 0.457252 -vt 0.550549 0.457325 -vt 0.550343 0.457292 -vt 0.551439 0.457472 -vt 0.551273 0.457502 -vt 0.550992 0.457411 -vt 0.550845 0.457422 -vt 0.550768 0.458011 -vt 0.550596 0.458122 -vt 0.550991 0.457385 -vt 0.551393 0.457742 -vt 0.551518 0.457632 -vt 0.551030 0.457913 -vt 0.551005 0.457205 -vt 0.551304 0.457600 -vt 0.551468 0.457557 -vt 0.551318 0.457631 -vt 0.550842 0.457327 -vt 0.550991 0.457333 -vt 0.550845 0.457296 -vt 0.551207 0.456046 -vt 0.551299 0.456228 -vt 0.551101 0.456714 -vt 0.551281 0.457182 -vt 0.551444 0.457223 -vt 0.551616 0.456827 -vt 0.551667 0.456988 -vt 0.551113 0.456341 -vt 0.550994 0.456176 -vt 0.550350 0.457466 -vt 0.550561 0.457467 -vt 0.550513 0.456741 -vt 0.550730 0.456768 -vt 0.550696 0.456832 -vt 0.550693 0.458257 -vt 0.550809 0.458071 -vt 0.551481 0.458116 -vt 0.550746 0.456397 -vt 0.550692 0.456461 -vt 0.551134 0.458632 -vt 0.551576 0.458153 -vt 0.550478 0.456816 -vt 0.551436 0.455950 -vt 0.551572 0.456123 -vt 0.551502 0.456145 -vt 0.551677 0.458180 -vt 0.550596 0.456596 -vt 0.550552 0.456667 -vt 0.551617 0.457890 -vt 0.551766 0.458344 -vt 0.551712 0.457740 -vt 0.551133 0.456085 -vt 0.551757 0.457743 -vt 0.550928 0.456226 -vt 0.551836 0.456521 -vt 0.551829 0.456367 -vt 0.551358 0.455978 -vt 0.551676 0.455887 -vt 0.551791 0.457742 -vt 0.551272 0.458155 -vt 0.551515 0.455926 -vt 0.551101 0.458003 -vt 0.550865 0.458438 -vt 0.551056 0.458333 -vt 0.551475 0.456451 -vt 0.551001 0.458286 -vt 0.551755 0.456801 -vt 0.551273 0.456736 -vt 0.551802 0.456977 -vt 0.551790 0.456976 -vt 0.550767 0.456706 -vt 0.551031 0.457106 -vt 0.550969 0.457816 -vt 0.551605 0.457015 -vt 0.550666 0.457819 -vt 0.551490 0.457121 -vt 0.550593 0.457612 -vt 0.551458 0.457537 -vt 0.551017 0.457563 -vt 0.551281 0.457535 -vt 0.550560 0.457251 -vt 0.550554 0.457288 -vt 0.551264 0.457432 -vt 0.551606 0.457702 -vt 0.550549 0.457393 -vt 0.550555 0.457430 -vt 0.551534 0.457648 -vt 0.550643 0.458190 -vt 0.551478 0.457577 -vt 0.550593 0.457106 -vt 0.551437 0.457335 -vt 0.551264 0.457359 -vt 0.550357 0.457212 -vt 0.551264 0.457286 -vt 0.550948 0.456481 -vt 0.550898 0.456534 -vt 0.551273 0.457216 -vt 0.551584 0.456839 -vt 0.551416 0.456951 -vt 0.551550 0.457054 -vt 0.550804 0.456337 -vt 0.551829 0.458351 -vt 0.551828 0.456803 -vt 0.551441 0.456928 -vt 0.320323 0.087575 -vt 0.809681 0.802388 -vt 0.512030 0.664376 -vt 0.760541 0.346600 -vt 0.466459 0.020587 -vt 0.466465 0.000376 -vt 0.516398 0.813025 -vt 0.519007 0.118662 -vt 0.529364 0.087648 -vt 0.154159 0.152571 -vt 0.713518 0.072789 -vt 0.715543 0.677357 -vt 0.776016 0.216474 -vt 0.760894 0.084293 -vt 0.763203 0.084176 -vt 0.765488 0.084526 -vt 0.767656 0.085329 -vt 0.769618 0.086552 -vt 0.771293 0.088144 -vt 0.772614 0.090042 -vt 0.773525 0.092166 -vt 0.773991 0.094430 -vt 0.773991 0.096742 -vt 0.773525 0.099006 -vt 0.772614 0.101131 -vt 0.769618 0.104621 -vt 0.767656 0.105843 -vt 0.765488 0.106646 -vt 0.763203 0.106996 -vt 0.760894 0.106879 -vt 0.758657 0.106300 -vt 0.756581 0.105282 -vt 0.754753 0.103867 -vt 0.753247 0.102113 -vt 0.752126 0.100092 -vt 0.751434 0.097886 -vt 0.751200 0.095586 -vt 0.751434 0.093286 -vt 0.752126 0.091081 -vt 0.753247 0.089060 -vt 0.754753 0.087306 -vt 0.756581 0.085891 -vt 0.758657 0.084873 -vt 0.713518 0.072037 -vt 0.774767 0.213575 -vt 0.549841 0.231927 -vt 0.530159 0.101380 -vt 0.734653 0.424368 -vt 0.773240 0.346600 -vt 0.530133 0.470400 -vt 0.516771 0.666125 -vt 0.000376 0.539218 -vt 0.516412 0.803140 -vt 0.519033 0.043819 -vt 0.714425 0.783839 -vt 0.947099 0.628644 -vt 0.545677 0.648796 -vt 0.796607 0.803564 -vt 0.737247 0.224891 -vt 0.760417 0.438305 -vt 0.780341 0.036466 -vt 0.320340 0.387647 -vt 0.571198 0.745573 -vt 0.055325 0.951387 -vt 0.571080 0.742494 -vt 0.410423 0.887224 -vt 0.738452 0.086767 -vt 0.750434 0.109102 -vt 0.735298 0.129447 -vt 0.713519 0.092743 -vt 0.512030 0.679059 -vt 0.520286 0.684940 -vt 0.409092 0.238009 -vt 0.735407 0.317052 -vt 0.735406 0.292521 -vt 0.735405 0.238009 -vt 0.735406 0.300698 -vt 0.735406 0.306149 -vt 0.735406 0.311600 -vt 0.466452 0.474893 -vt 0.719159 0.823829 -vt 0.516398 0.816641 -vt 0.735406 0.287070 -vt 0.154195 0.322595 -vt 0.153800 0.805399 -vt 0.622742 0.219389 -vt 0.662883 0.224561 -vt 0.613479 0.219429 -vt 0.622706 0.229438 -vt 0.613452 0.229333 -vt 0.719136 0.670691 -vt 0.762819 0.131475 -vt 0.762775 0.171195 -vt 0.780992 0.161841 -vt 0.783957 0.151480 -vt 0.783257 0.146234 -vt 0.771065 0.132776 -vt 0.781222 0.141378 -vt 0.782398 0.143741 -vt 0.754760 0.133578 -vt 0.751626 0.049390 -vt 0.753702 0.048372 -vt 0.755939 0.047792 -vt 0.758248 0.047675 -vt 0.760533 0.048025 -vt 0.762701 0.048828 -vt 0.764663 0.050051 -vt 0.766338 0.051644 -vt 0.767659 0.053541 -vt 0.768570 0.055665 -vt 0.768803 0.056797 -vt 0.749798 0.050805 -vt 0.747171 0.054580 -vt 0.748292 0.052559 -vt 0.746245 0.059085 -vt 0.746478 0.056785 -vt 0.746478 0.061385 -vt 0.748292 0.065612 -vt 0.753702 0.069799 -vt 0.751626 0.068781 -vt 0.758248 0.070495 -vt 0.755939 0.070378 -vt 0.762701 0.069342 -vt 0.760533 0.070145 -vt 0.766338 0.066527 -vt 0.764662 0.068120 -vt 0.768570 0.062505 -vt 0.767658 0.064630 -vt 0.769035 0.057930 -vt 0.769035 0.060241 -vt 0.713519 0.180020 -vt 0.713519 0.196201 -vt 0.713519 0.147657 -vt 0.713519 0.131475 -vt 0.713519 0.136099 -vt 0.661060 0.203136 -vt 0.691282 0.218082 -vt 0.734653 0.268080 -vt 0.773223 0.339546 -vt 0.536465 0.237256 -vt 0.512030 0.690821 -vt 0.756078 0.459598 -vt 0.767124 0.813680 -vt 0.760417 0.450229 -vt 0.735405 0.345848 -vt 0.735405 0.339052 -vt 0.550761 0.231953 -vt 0.550780 0.231943 -vt 0.550800 0.231935 -vt 0.550822 0.231930 -vt 0.550843 0.231927 -vt 0.550865 0.231927 -vt 0.550887 0.231930 -vt 0.550908 0.231935 -vt 0.550928 0.231943 -vt 0.550948 0.231953 -vt 0.550966 0.231965 -vt 0.550982 0.231980 -vt 0.550997 0.231996 -vt 0.551009 0.232014 -vt 0.551019 0.232034 -vt 0.551027 0.232054 -vt 0.551035 0.232097 -vt 0.551035 0.232108 -vt 0.551035 0.232119 -vt 0.551033 0.232130 -vt 0.551032 0.232140 -vt 0.551027 0.232162 -vt 0.551019 0.232182 -vt 0.551009 0.232201 -vt 0.550997 0.232219 -vt 0.550982 0.232236 -vt 0.550966 0.232250 -vt 0.550948 0.232263 -vt 0.550928 0.232273 -vt 0.550908 0.232281 -vt 0.550887 0.232286 -vt 0.550843 0.232288 -vt 0.550822 0.232286 -vt 0.550800 0.232281 -vt 0.550780 0.232273 -vt 0.550761 0.232263 -vt 0.550743 0.232250 -vt 0.550726 0.232236 -vt 0.550712 0.232219 -vt 0.550699 0.232201 -vt 0.550689 0.232182 -vt 0.550681 0.232162 -vt 0.550676 0.232140 -vt 0.550674 0.232119 -vt 0.550674 0.232108 -vt 0.550674 0.232097 -vt 0.550676 0.232075 -vt 0.550682 0.232054 -vt 0.550689 0.232034 -vt 0.550699 0.232014 -vt 0.550712 0.231996 -vt 0.550726 0.231980 -vt 0.550743 0.231965 -vt 0.551756 0.455872 -vt 0.550343 0.457426 -vn 0.6511 0.0000 0.7590 -vn 0.5817 0.5729 0.5773 -vn 0.5256 0.5915 0.6114 -vn 0.0041 0.9999 0.0097 -vn 0.0196 0.9995 0.0244 -vn 0.0198 0.9994 0.0268 -vn 0.1815 -0.1982 -0.9632 -vn 0.7911 -0.5487 -0.2704 -vn 0.2124 -0.1528 -0.9651 -vn 0.5269 0.8478 -0.0601 -vn 0.8279 0.5595 -0.0372 -vn 0.5119 0.8588 -0.0220 -vn -0.1951 0.9808 0.0000 -vn 0.0009 1.0000 -0.0034 -vn 0.0000 1.0000 0.0000 -vn -0.3827 0.9239 0.0000 -vn -0.2025 0.9791 -0.0174 -vn -0.5556 0.8314 0.0000 -vn -0.4059 0.9130 -0.0411 -vn -0.6900 0.7238 0.0000 -vn -0.5972 0.7985 -0.0755 -vn -0.7504 0.6505 -0.1171 -vn 0.5996 -0.8003 0.0000 -vn 0.1629 -0.9808 0.1072 -vn 0.9239 0.3827 0.0000 -vn 0.4390 0.7593 0.4804 -vn 0.1870 0.9823 -0.0072 -vn 0.8314 0.5556 0.0000 -vn 0.7071 0.7071 0.0000 -vn 0.5556 0.8314 0.0000 -vn 0.3827 0.9239 0.0000 -vn 0.1951 0.9808 0.0000 -vn 0.3780 0.9255 -0.0241 -vn 0.0000 0.9170 -0.3989 -vn -0.0520 0.9391 -0.3395 -vn 0.7020 0.7098 -0.0580 -vn 0.0040 0.9948 -0.1017 -vn 0.9188 0.3847 -0.0884 -vn 0.2594 0.9656 -0.0186 -vn 0.1829 0.9827 -0.0285 -vn 0.5505 0.8338 -0.0405 -vn -0.0119 0.9806 -0.1954 -vn 0.8264 0.5581 -0.0746 -vn 0.0772 0.9956 -0.0522 -vn 0.1629 0.9808 0.1072 -vn 0.1547 0.9832 0.0968 -vn 0.0004 1.0000 0.0057 -vn 0.0039 1.0000 0.0055 -vn 0.0135 0.9998 -0.0152 -vn 0.2262 0.9737 -0.0254 -vn 0.3321 0.9422 -0.0443 -vn 0.1636 0.9864 -0.0152 -vn 0.0772 0.9970 -0.0059 -vn 0.0084 0.9999 -0.0002 -vn 0.0000 1.0000 -0.0020 -vn 0.0081 0.9999 -0.0019 -vn 0.0246 0.9997 -0.0007 -vn 0.0228 0.9997 -0.0012 -vn 0.2860 -0.9280 0.2389 -vn 0.0038 -1.0000 0.0058 -vn 0.0006 -1.0000 0.0058 -vn 0.0097 0.9999 -0.0002 -vn 0.0092 0.9999 -0.0002 -vn 0.0627 0.9980 0.0000 -vn 0.1028 0.9947 0.0068 -vn 0.0844 0.9964 0.0043 -vn 0.0331 0.9994 -0.0025 -vn 0.0749 0.9972 0.0009 -vn 0.0000 1.0000 -0.0033 -vn 0.0394 0.9992 -0.0024 -vn 0.2247 -0.9743 0.0157 -vn 0.1712 -0.9852 0.0011 -vn 0.1542 -0.9880 0.0050 -vn 0.0454 -0.7124 0.7003 -vn 0.1028 -0.9947 0.0068 -vn 0.0749 -0.9972 0.0009 -vn 0.3842 -0.9216 0.0545 -vn 0.5289 -0.8483 0.0257 -vn 0.4371 -0.8993 0.0160 -vn 0.0000 -1.0000 -0.0036 -vn 0.0557 -0.9984 -0.0020 -vn 0.0000 -1.0000 -0.0044 -vn 0.8915 0.3778 0.2498 -vn 0.7029 0.6891 0.1759 -vn 0.6080 0.7728 0.1820 -vn 0.1567 0.9813 0.1113 -vn 0.6611 0.7486 0.0498 -vn 0.8113 0.5610 0.1644 -vn 0.8116 0.5813 0.0575 -vn 0.8186 -0.5022 0.2786 -vn 0.5101 -0.8291 0.2288 -vn 0.8126 -0.4620 0.3552 -vn 0.5224 0.8516 0.0423 -vn 0.6711 0.7289 0.1350 -vn 0.7037 -0.6711 0.2333 -vn 0.7150 -0.6305 0.3020 -vn 0.4023 0.9148 0.0353 -vn 0.5394 0.8352 0.1066 -vn 0.5872 -0.7876 0.1864 -vn 0.6098 -0.7538 0.2448 -vn 0.2984 0.9540 0.0283 -vn 0.4241 0.9019 0.0811 -vn 0.4792 -0.8660 0.1426 -vn 0.5073 -0.8406 0.1897 -vn 0.2271 0.9736 0.0213 -vn 0.3238 0.9443 0.0587 -vn 0.3816 -0.9185 0.1036 -vn 0.4114 -0.9007 0.1397 -vn 0.1786 0.9838 0.0151 -vn 0.2523 0.9668 0.0409 -vn 0.3062 -0.9492 0.0723 -vn 0.3343 -0.9373 0.0988 -vn 0.4943 0.8632 0.1022 -vn 0.4953 0.8679 0.0372 -vn 0.1461 0.9891 0.0159 -vn 0.1250 0.9921 0.0096 -vn 0.0610 -0.7082 0.7034 -vn 0.1461 -0.9891 0.0159 -vn 0.1264 -0.6904 0.7123 -vn 0.2523 -0.9668 0.0409 -vn 0.2008 -0.9792 0.0275 -vn 0.5259 0.8479 0.0669 -vn 0.5658 0.8224 0.0588 -vn 0.4945 0.8688 0.0241 -vn 0.2044 -0.9789 0.0046 -vn 0.3532 -0.9341 0.0510 -vn 0.2383 -0.9700 0.0483 -vn 0.4635 0.8776 0.1224 -vn 0.4629 0.8847 0.0545 -vn 0.3042 -0.9525 0.0096 -vn 0.4629 -0.8847 0.0545 -vn 0.3738 0.9132 0.1623 -vn 0.3532 0.9341 0.0510 -vn 0.3988 -0.9169 0.0154 -vn 0.5658 -0.8224 0.0588 -vn 0.2188 0.9571 0.1898 -vn 0.2383 0.9700 0.0483 -vn 0.1033 -0.9946 0.0015 -vn 0.1201 -0.9916 0.0467 -vn 0.0000 0.9839 0.1783 -vn 0.1201 0.9916 0.0467 -vn 0.0000 -1.0000 0.0003 -vn 0.0000 -0.9989 0.0463 -vn 0.9938 0.0724 0.0846 -vn 0.9888 0.1206 0.0879 -vn 0.9942 0.0601 0.0886 -vn 0.9938 -0.0724 0.0846 -vn 0.9960 0.0000 0.0887 -vn 0.9942 -0.0601 0.0886 -vn 0.9551 0.2856 0.0790 -vn 0.9858 0.1454 0.0833 -vn 0.9551 -0.2856 0.0790 -vn 0.9888 -0.1206 0.0879 -vn 0.9672 -0.2392 0.0857 -vn 0.9061 0.4169 0.0722 -vn 0.9672 0.2392 0.0857 -vn 0.9061 -0.4169 0.0722 -vn 0.9314 -0.3545 0.0826 -vn 0.8419 0.5359 0.0636 -vn 0.9314 0.3545 0.0826 -vn 0.8419 -0.5359 0.0636 -vn 0.8820 -0.4645 0.0785 -vn 0.7656 0.6410 0.0538 -vn 0.8820 0.4645 0.0785 -vn 0.7656 -0.6410 0.0538 -vn 0.8198 -0.5678 0.0739 -vn 0.6806 0.7313 0.0435 -vn 0.8198 0.5678 0.0739 -vn 0.6806 -0.7313 0.0435 -vn 0.7456 -0.6628 0.0688 -vn 0.5895 0.8070 0.0335 -vn 0.7456 0.6628 0.0688 -vn 0.5895 -0.8070 0.0335 -vn 0.6605 -0.7480 0.0637 -vn 0.6605 0.7480 0.0637 -vn 0.4945 -0.8688 0.0241 -vn 0.3482 0.9181 0.1890 -vn 0.4558 0.8684 0.1953 -vn 0.4563 0.8695 0.1890 -vn 0.3482 -0.9181 0.1890 -vn 0.4558 -0.8684 0.1953 -vn 0.3478 -0.9170 0.1953 -vn 0.6511 0.7350 0.1890 -vn 0.5571 0.8071 0.1953 -vn 0.6503 0.7341 0.1953 -vn 0.1184 -0.9748 0.1890 -vn 0.2347 -0.9522 0.1953 -vn 0.1182 -0.9736 0.1953 -vn 0.4624 -0.8810 0.0995 -vn 0.2381 0.9661 0.0995 -vn 0.6598 -0.7448 0.0995 -vn 0.5652 -0.8189 0.0995 -vn 0.1195 -0.9842 0.1307 -vn 0.2360 -0.9574 0.1664 -vn 0.1188 -0.9789 0.1664 -vn 0.0000 -0.9807 0.1953 -vn 0.0000 -0.9820 0.1890 -vn 0.0000 -0.9861 0.1664 -vn 0.0000 -0.9914 0.1307 -vn 0.9534 0.2350 0.1890 -vn 0.9736 0.1182 0.1953 -vn 0.9748 0.1184 0.1890 -vn 0.9896 -0.0598 0.1306 -vn 0.9861 0.0000 0.1664 -vn 0.9843 -0.0595 0.1662 -vn 0.9802 -0.0593 0.1888 -vn 0.9807 0.0000 0.1953 -vn 0.9790 -0.0592 0.1949 -vn 0.9626 -0.2373 0.1307 -vn 0.9789 -0.1188 0.1664 -vn 0.9574 -0.2360 0.1664 -vn 0.9181 -0.3482 0.1890 -vn 0.9522 -0.2347 0.1953 -vn 0.9170 -0.3478 0.1953 -vn 0.9220 -0.3497 0.1664 -vn 0.9270 -0.3515 0.1307 -vn 0.8695 -0.4563 0.1890 -vn 0.8684 -0.4558 0.1953 -vn 0.8731 -0.4582 0.1664 -vn 0.8778 -0.4607 0.1307 -vn 0.8071 -0.5571 0.1953 -vn 0.8081 -0.5578 0.1890 -vn 0.8115 -0.5601 0.1664 -vn 0.8159 -0.5632 0.1307 -vn 0.7350 -0.6511 0.1890 -vn 0.7341 -0.6503 0.1953 -vn 0.7421 -0.6574 0.1307 -vn 0.7381 -0.6539 0.1664 -vn 0.6503 -0.7341 0.1953 -vn 0.6511 -0.7350 0.1890 -vn 0.6539 -0.7381 0.1664 -vn 0.6574 -0.7421 0.1307 -vn 0.5632 0.8159 0.1307 -vn 0.6539 0.7381 0.1664 -vn 0.6574 0.7421 0.1307 -vn 0.0000 0.9950 0.0995 -vn 0.1199 0.9878 0.0995 -vn 0.3528 0.9304 0.0995 -vn 0.4624 0.8810 0.0995 -vn 0.9661 0.2381 0.0995 -vn 0.9878 0.1199 0.0995 -vn 0.5632 -0.8159 0.1307 -vn 0.5601 -0.8115 0.1664 -vn 0.5578 -0.8081 0.1890 -vn 0.5571 -0.8071 0.1953 -vn 0.3528 -0.9304 0.0995 -vn 0.6598 0.7448 0.0995 -vn 0.7381 0.6539 0.1664 -vn 0.7421 0.6574 0.1307 -vn 0.7341 0.6503 0.1953 -vn 0.7350 0.6511 0.1890 -vn 0.7448 0.6598 0.0995 -vn 0.8189 -0.5652 0.0995 -vn 0.7448 -0.6598 0.0995 -vn 0.8115 0.5601 0.1664 -vn 0.8159 0.5632 0.1307 -vn 0.8071 0.5571 0.1953 -vn 0.8081 0.5578 0.1890 -vn 0.8189 0.5652 0.0995 -vn 0.8810 -0.4624 0.0995 -vn 0.8778 0.4607 0.1307 -vn 0.8731 0.4582 0.1664 -vn 0.8695 0.4563 0.1890 -vn 0.8684 0.4558 0.1953 -vn 0.8810 0.4624 0.0995 -vn 0.9220 0.3497 0.1664 -vn 0.9270 0.3515 0.1307 -vn 0.9170 0.3478 0.1953 -vn 0.9181 0.3482 0.1890 -vn 0.9304 0.3528 0.0995 -vn 0.9661 -0.2381 0.0995 -vn 0.9304 -0.3528 0.0995 -vn 0.9626 0.2373 0.1307 -vn 0.9574 0.2360 0.1664 -vn 0.9522 0.2347 0.1953 -vn 0.9896 0.0598 0.1306 -vn 0.9789 0.1188 0.1664 -vn 0.9843 0.0595 0.1662 -vn 0.9932 0.0601 0.0993 -vn 0.9534 -0.2350 0.1890 -vn 0.9736 -0.1182 0.1953 -vn 0.9950 0.0000 0.0995 -vn 0.9932 -0.0601 0.0993 -vn 0.9802 0.0593 0.1888 -vn 0.9790 0.0592 0.1949 -vn 0.9842 0.1195 0.1307 -vn 0.0000 -0.9950 0.0995 -vn 0.1195 0.9842 0.1307 -vn 0.0000 0.9861 0.1664 -vn 0.1188 0.9789 0.1664 -vn 0.1184 0.9748 0.1890 -vn 0.0000 0.9807 0.1953 -vn 0.1182 0.9736 0.1953 -vn 0.1199 -0.9878 0.0995 -vn 0.2373 0.9626 0.1307 -vn 0.2360 0.9574 0.1664 -vn 0.2347 0.9522 0.1953 -vn 0.2350 0.9534 0.1890 -vn 0.4607 -0.8778 0.1307 -vn 0.4582 -0.8731 0.1664 -vn 0.4563 -0.8695 0.1890 -vn 0.3497 0.9220 0.1664 -vn 0.3515 0.9270 0.1307 -vn 0.3478 0.9170 0.1953 -vn 0.3515 -0.9270 0.1307 -vn 0.2373 -0.9626 0.1307 -vn 0.2381 -0.9661 0.0995 -vn 0.4582 0.8731 0.1664 -vn 0.5601 0.8115 0.1664 -vn 0.5652 0.8189 0.0995 -vn 0.2350 -0.9534 0.1890 -vn 0.3497 -0.9220 0.1664 -vn 0.5578 0.8081 0.1890 -vn 0.4607 0.8778 0.1307 -vn 0.9842 -0.1195 0.1307 -vn 0.9878 -0.1199 0.0995 -vn 0.9748 -0.1184 0.1890 -vn 0.9914 0.0000 0.1307 -vn 0.9820 0.0000 0.1890 -vn 0.0000 0.9914 0.1307 -vn 0.0000 0.9820 0.1890 -vn 0.1941 0.9809 0.0108 -vn 0.2699 0.9628 0.0131 -vn 0.3879 0.9216 0.0136 -vn 0.5198 0.8542 0.0123 -vn 0.6668 0.7451 0.0096 -vn 0.8197 0.5727 0.0063 -vn 0.5184 0.8551 0.0060 -vn 0.0005 -1.0000 0.0058 -vn 0.0145 -0.9997 0.0198 -vn 0.0017 -0.9999 0.0082 -vn 0.0211 0.9998 -0.0032 -vn 0.0406 0.9991 -0.0016 -vn 0.0506 0.9987 0.0014 -vn 0.0898 0.9959 0.0049 -vn 0.1473 0.9890 0.0078 -vn 0.1361 -0.9906 0.0134 -vn 0.2072 -0.9777 0.0342 -vn 0.1519 -0.9883 0.0158 -vn 0.3018 -0.9528 0.0337 -vn 0.2580 -0.9661 0.0054 -vn 0.0506 -0.9987 -0.0016 -vn 0.1069 -0.9942 0.0043 -vn 0.0238 -0.7118 0.7020 -vn 0.0394 -0.9992 -0.0024 -vn 0.0789 -0.9969 -0.0010 -vn 0.0000 -1.0000 -0.0016 -vn 0.0000 -1.0000 -0.0031 -vn 0.1870 -0.9819 0.0284 -vn 0.2737 -0.9596 0.0646 -vn 0.0891 -0.6993 0.7092 -vn 0.2472 0.9677 0.0484 -vn 0.3343 0.9373 0.0988 -vn 0.3062 0.9492 0.0723 -vn 0.3842 0.9216 0.0545 -vn 0.5289 0.8483 0.0257 -vn 0.4609 0.8842 0.0757 -vn 0.1600 -0.6806 0.7149 -vn 0.3238 -0.9443 0.0587 -vn 0.4114 0.9007 0.1397 -vn 0.3816 0.9185 0.1036 -vn 0.6213 0.7827 0.0376 -vn 0.5464 0.8306 0.1074 -vn 0.4609 -0.8842 0.0757 -vn 0.6213 -0.7827 0.0376 -vn 0.2069 -0.6564 0.7255 -vn 0.4241 -0.9019 0.0811 -vn 0.5073 0.8406 0.1897 -vn 0.4792 0.8660 0.1426 -vn 0.7127 0.6996 0.0510 -vn 0.6399 0.7549 0.1436 -vn 0.5464 -0.8306 0.1074 -vn 0.7127 -0.6996 0.0510 -vn 0.2754 -0.6225 0.7325 -vn 0.5394 -0.8352 0.1066 -vn 0.6098 0.7538 0.2448 -vn 0.5872 0.7876 0.1864 -vn 0.7996 0.5970 0.0648 -vn 0.7320 0.6567 0.1812 -vn 0.6399 -0.7549 0.1436 -vn 0.7996 -0.5970 0.0648 -vn 0.3527 -0.5716 0.7408 -vn 0.6711 -0.7289 0.1350 -vn 0.7150 0.6305 0.3020 -vn 0.7037 0.6711 0.2333 -vn 0.8773 0.4734 0.0780 -vn 0.8184 0.5318 0.2179 -vn 0.7320 -0.6567 0.1812 -vn 0.8773 -0.4734 0.0780 -vn 0.4394 -0.4939 0.7503 -vn 0.8113 -0.5610 0.1644 -vn 0.8126 0.4620 0.3552 -vn 0.8186 0.5022 0.2786 -vn 0.9398 0.3298 0.0894 -vn 0.8184 -0.5318 0.2179 -vn 0.9398 -0.3298 0.0894 -vn 0.5338 -0.3768 0.7570 -vn 0.4943 -0.8632 0.1022 -vn 0.9465 0.0935 -0.3087 -vn 0.6836 0.0000 -0.7298 -vn 0.9527 -0.0001 -0.3039 -vn 0.2992 0.9505 0.0830 -vn 0.8915 -0.3778 0.2498 -vn 0.7029 -0.6891 0.1759 -vn 0.0057 -0.9999 0.0096 -vn 0.1235 -0.9842 0.1268 -vn 0.1141 -0.9846 0.1326 -vn 0.1581 -0.9793 0.1259 -vn 0.5101 0.8291 0.2288 -vn 0.5018 0.8474 0.1733 -vn 0.0006 1.0000 0.0058 -vn 0.0037 1.0000 0.0057 -vn 0.0038 1.0000 0.0057 -vn 0.0000 -0.7147 0.6994 -vn 0.3478 -0.9375 0.0099 -vn 0.2472 -0.9677 0.0484 -vn 0.0000 1.0000 -0.0036 -vn 0.0581 0.9983 0.0039 -vn 0.0506 0.9987 -0.0016 -vn 0.0855 -0.9963 -0.0010 -vn 0.0968 -0.9953 0.0038 -vn 0.1075 0.9941 0.0152 -vn 0.0968 0.9953 0.0038 -vn 0.5220 0.8529 0.0049 -vn 0.5139 0.8576 0.0173 -vn 0.5115 0.8593 0.0042 -vn 0.1529 0.9878 0.0305 -vn 0.1361 0.9906 0.0134 -vn 0.2383 0.8827 -0.4050 -vn 0.0000 0.9810 -0.1941 -vn 0.2226 0.9648 -0.1397 -vn 0.1870 0.9819 0.0284 -vn 0.2684 0.9607 0.0699 -vn 0.2008 0.9792 0.0275 -vn 0.5265 0.8500 0.0186 -vn 0.4371 0.8993 0.0160 -vn 0.2080 0.9767 0.0530 -vn 0.1745 -0.9843 0.0236 -vn 0.2495 -0.9671 0.0490 -vn 0.1168 -0.9931 0.0080 -vn 0.4120 -0.9028 0.1231 -vn 0.4120 0.9028 0.1231 -vn 0.3049 0.9500 0.0671 -vn 0.4936 -0.8527 0.1708 -vn 0.4936 0.8527 0.1708 -vn 0.5856 -0.7785 0.2257 -vn 0.5856 0.7785 0.2257 -vn 0.6770 -0.6796 0.2827 -vn 0.6769 0.6796 0.2827 -vn 0.7628 -0.5513 0.3377 -vn 0.7628 0.5513 0.3377 -vn 0.8355 -0.3920 0.3851 -vn 0.8355 0.3920 0.3851 -vn 0.5018 -0.8474 0.1733 -vn 0.5345 -0.8061 0.2540 -vn 0.5345 0.8061 0.2540 -vn 0.1567 -0.9813 0.1113 -vn 0.0000 -1.0000 -0.0037 -vn 0.0595 -0.9982 -0.0006 -vn 0.3420 -0.9360 0.0832 -vn 0.1693 0.9097 -0.3790 -vn 0.0000 1.0000 -0.0028 -vn 0.0000 0.9105 -0.4135 -vn 0.2986 0.9165 -0.2661 -vn 0.3895 0.9065 -0.1630 -vn 0.3909 0.9198 -0.0338 -vn 0.0000 1.0000 0.0001 -vn 0.0113 0.9999 -0.0003 -vn 0.0211 0.9998 -0.0005 -vn 0.0203 0.9998 -0.0004 -vn 0.0185 0.9998 -0.0003 -vn 0.0178 0.9998 -0.0014 -vn 0.0196 0.9998 -0.0009 -vn 0.0188 0.9998 -0.0007 -vn 0.0171 0.9998 -0.0005 -vn 0.0168 0.9998 -0.0002 -vn 0.0057 0.9999 0.0096 -vn 0.1235 0.9842 0.1268 -vn 0.0664 0.9978 -0.0045 -vn 0.0637 0.9980 -0.0036 -vn 0.0580 0.9983 -0.0027 -vn 0.0558 0.9984 0.0005 -vn 0.1412 0.9899 -0.0119 -vn 0.1355 0.9907 -0.0096 -vn 0.1237 0.9923 -0.0069 -vn 0.1181 0.9930 0.0002 -vn 0.4926 0.8671 -0.0742 -vn 0.1959 0.9804 -0.0199 -vn 0.1881 0.9820 -0.0161 -vn 0.1720 0.9850 -0.0116 -vn 0.1639 0.9864 -0.0003 -vn 0.2904 0.9563 -0.0350 -vn 0.2796 0.9597 -0.0285 -vn 0.2568 0.9662 -0.0206 -vn 0.2456 0.9694 -0.0029 -vn 0.4389 0.8965 -0.0597 -vn 0.4247 0.9040 -0.0489 -vn 0.3938 0.9185 -0.0357 -vn 0.3777 0.9259 -0.0088 -vn 0.5887 0.8035 -0.0882 -vn 0.5737 0.8158 -0.0728 -vn 0.5396 0.8402 -0.0538 -vn 0.5211 0.8533 -0.0170 -vn 0.6438 0.7577 -0.1068 -vn 0.7338 0.6690 -0.1181 -vn 0.7215 0.6853 -0.0985 -vn 0.6915 0.7186 -0.0740 -vn 0.6749 0.7374 -0.0269 -vn 0.7783 0.6124 -0.1389 -vn 0.8613 0.4867 -0.1457 -vn 0.8553 0.5033 -0.1229 -vn 0.8373 0.5386 -0.0941 -vn 0.8861 0.4325 -0.1664 -vn 0.1594 -0.9854 0.0591 -vn 0.6004 -0.7997 0.0020 -vn 0.0198 -0.9994 0.0268 -vn 0.0041 -0.9999 0.0097 -vn 0.5458 0.8326 -0.0940 -vn 0.5396 0.8382 -0.0788 -vn 0.1594 0.9854 0.0591 -vn 0.1581 0.9793 0.1259 -vn 0.0137 -0.9998 -0.0152 -vn 0.6010 -0.7992 0.0043 -vn 0.5646 0.8183 -0.1080 -vn 0.0005 1.0000 0.0058 -vn 0.0145 0.9997 0.0198 -vn 0.0037 -1.0000 0.0057 -vn 0.6160 0.7853 -0.0616 -vn -0.0016 -0.4241 -0.9056 -vn -0.1835 -0.9141 -0.3616 -vn -0.0851 -0.4046 -0.9105 -vn -0.3568 -0.8579 -0.3696 -vn -0.1600 -0.3717 -0.9144 -vn -0.5155 -0.7696 -0.3767 -vn -0.2260 -0.3263 -0.9178 -vn -0.6377 -0.6670 -0.3854 -vn -0.2709 -0.2733 -0.9230 -vn 0.0000 -0.6880 -0.7257 -vn -0.4280 -0.1281 -0.8947 -vn 0.4755 0.0002 -0.8797 -vn 0.9466 -0.0933 -0.3087 -vn 0.4520 -0.0447 -0.8909 -vn 0.4357 -0.1809 -0.8817 -vn 0.9338 -0.1864 -0.3052 -vn 0.8783 -0.3651 -0.3086 -vn 0.3879 -0.2600 -0.8843 -vn 0.7885 -0.5289 -0.3138 -vn 0.3248 -0.3264 -0.8876 -vn 0.6684 -0.6712 -0.3206 -vn 0.2502 -0.3773 -0.8916 -vn 0.5229 -0.7865 -0.3286 -vn 0.1678 -0.4111 -0.8960 -vn 0.3581 -0.8705 -0.3374 -vn 0.0819 -0.4271 -0.9005 -vn 0.1808 -0.9204 -0.3466 -vn -0.0002 -0.9351 -0.3543 -vn -0.0019 0.4239 -0.9057 -vn -0.1834 0.9141 -0.3617 -vn -0.0000 0.9351 -0.3545 -vn -0.0855 0.4042 -0.9106 -vn -0.3568 0.8579 -0.3697 -vn -0.1603 0.3713 -0.9145 -vn -0.5154 0.7696 -0.3768 -vn -0.2262 0.3258 -0.9179 -vn -0.6376 0.6670 -0.3855 -vn -0.2709 0.2729 -0.9231 -vn 0.0000 0.6887 -0.7250 -vn 0.4654 0.0933 -0.8801 -vn 0.4519 0.0451 -0.8909 -vn 0.4355 0.1814 -0.8817 -vn 0.9338 0.1863 -0.3053 -vn 0.3876 0.2605 -0.8842 -vn 0.8783 0.3650 -0.3087 -vn 0.3244 0.3268 -0.8876 -vn 0.7886 0.5287 -0.3139 -vn 0.2497 0.3776 -0.8916 -vn 0.6684 0.6710 -0.3207 -vn 0.1673 0.4113 -0.8960 -vn 0.5229 0.7864 -0.3288 -vn 0.0813 0.4271 -0.9005 -vn 0.3582 0.8704 -0.3376 -vn 0.1809 0.9203 -0.3468 -vn -0.4291 0.1272 -0.8942 -vn 0.0000 0.0736 -0.9973 -vn 0.0000 -0.0734 -0.9973 -vn -0.5065 -0.0252 -0.8618 -vn 0.0000 -0.0476 -0.9988 -vn -0.5531 -0.0140 -0.8329 -vn -0.5535 0.0135 -0.8328 -vn 0.0000 0.0469 -0.9989 -vn -0.5075 0.0248 -0.8613 -vn 0.6950 -0.5662 0.4430 -vn 0.2992 -0.9505 0.0830 -vn 0.8468 -0.4595 0.2680 -vn 0.8459 0.0000 0.5332 -vn 0.7020 -0.5538 0.4477 -vn 0.6950 0.5662 0.4430 -vn 0.8468 0.4595 0.2680 -vn 0.7020 0.5538 0.4477 -vn 0.6617 -0.5489 0.5107 -vn 0.9404 0.0000 0.3400 -vn 0.7523 -0.6009 0.2700 -vn 0.8151 0.0000 0.5793 -vn 0.6764 -0.5580 0.4807 -vn 0.0034 1.0000 0.0057 -vn 0.0033 1.0000 0.0049 -vn 0.0041 -1.0000 0.0060 -vn 0.0043 -1.0000 0.0055 -vn 0.7092 0.0000 0.7050 -vn 0.6549 0.5771 0.4879 -vn 0.0063 0.9999 0.0138 -vn 0.0168 -0.9995 0.0282 -vn 0.5817 -0.5729 0.5773 -vn 0.1439 -0.9837 0.1074 -vn 0.6549 -0.5771 0.4879 -vn 0.0034 -1.0000 0.0057 -vn 0.0033 -1.0000 0.0049 -vn 0.0041 1.0000 0.0060 -vn 0.0063 -0.9999 0.0138 -vn 0.0196 -0.9995 0.0244 -vn 0.3959 0.0000 -0.9183 -vn -0.3367 -0.4792 -0.8105 -vn 0.1457 -0.9158 -0.3741 -vn 0.8416 0.0000 0.5401 -vn 0.6764 0.5580 0.4807 -vn 0.7523 0.6009 0.2700 -vn 0.6617 0.5489 0.5107 -vn 0.0007 1.0000 0.0057 -vn 0.5256 -0.5915 0.6114 -vn 0.1457 0.9158 -0.3741 -vn 0.0000 1.0000 -0.0037 -vn 0.0000 1.0000 0.0029 -vn 0.2813 0.9415 -0.1855 -vn 0.7659 0.4404 -0.4683 -vn 0.2813 -0.9415 -0.1855 -vn 0.7659 -0.4405 -0.4683 -vn 0.0912 0.9391 -0.3313 -vn 0.2730 -0.9333 -0.2329 -vn 0.1547 -0.9832 0.0968 -vn -0.2565 0.2261 -0.9397 -vn -0.9191 0.2867 -0.2704 -vn -0.1888 0.1374 -0.9724 -vn -0.1438 -0.9492 -0.2797 -vn 0.0381 -0.7275 -0.6850 -vn 0.0502 -0.9587 -0.2797 -vn 0.1811 0.1985 -0.9632 -vn 0.5079 0.8179 -0.2704 -vn 0.1415 0.2383 -0.9608 -vn 0.1420 -0.2380 -0.9608 -vn 0.6644 -0.6967 -0.2704 -vn 0.0883 0.2743 -0.9576 -vn 0.3328 0.9034 -0.2704 -vn 0.0943 -0.2705 -0.9581 -vn 0.5106 -0.8162 -0.2704 -vn -0.1444 0.0270 -0.9891 -vn -0.9576 -0.0990 -0.2703 -vn -0.1446 -0.0263 -0.9891 -vn 0.0388 0.2968 -0.9541 -vn 0.1442 0.9519 -0.2704 -vn 0.0336 -0.2961 -0.9546 -vn 0.3359 -0.9022 -0.2704 -vn -0.0504 0.9614 -0.2704 -vn -0.0215 0.3085 -0.9510 -vn -0.0208 -0.3085 -0.9510 -vn 0.1474 -0.9514 -0.2704 -vn -0.0847 0.3072 -0.9478 -vn -0.2429 0.9316 -0.2704 -vn 0.4528 0.7909 -0.4115 -vn -0.2565 -0.2265 -0.9396 -vn -0.7294 -0.6283 -0.2704 -vn -0.2650 -0.2181 -0.9392 -vn -0.0839 -0.3074 -0.9478 -vn -0.0471 -0.9616 -0.2704 -vn -0.1890 -0.1374 -0.9723 -vn -0.8410 -0.4686 -0.2704 -vn -0.1477 0.2921 -0.9449 -vn -0.4254 0.8636 -0.2704 -vn -0.1469 -0.2924 -0.9449 -vn -0.2397 -0.9324 -0.2704 -vn -0.9181 -0.2897 -0.2704 -vn -0.2072 0.2629 -0.9423 -vn -0.5906 0.7603 -0.2704 -vn -0.2064 -0.2636 -0.9423 -vn -0.4225 -0.8651 -0.2704 -vn -0.7315 0.6259 -0.2704 -vn -0.2656 0.2173 -0.9392 -vn -0.5880 -0.7623 -0.2704 -vn -0.9580 0.0958 -0.2704 -vn -0.8426 0.4658 -0.2704 -vn 0.2522 0.0003 -0.9677 -vn 0.9567 0.0989 -0.2738 -vn 0.3071 0.0317 -0.9511 -vn 0.1951 -0.9808 0.0000 -vn 0.0000 -0.6836 -0.7298 -vn 0.0000 -1.0000 0.0000 -vn 0.2616 -0.6316 -0.7298 -vn 0.3827 -0.9239 0.0000 -vn 0.3798 -0.5684 -0.7298 -vn 0.5556 -0.8314 0.0000 -vn 0.4834 -0.4834 -0.7298 -vn 0.7071 -0.7071 0.0000 -vn 0.5684 -0.3798 -0.7298 -vn 0.8314 -0.5556 0.0000 -vn 0.6316 -0.2616 -0.7298 -vn 0.9239 -0.3827 0.0000 -vn 0.4790 -0.6459 -0.5944 -vn 0.6800 -0.7152 -0.1614 -vn -0.4758 -0.4991 -0.7242 -vn -0.6900 -0.7238 0.0000 -vn -0.3798 -0.5684 -0.7299 -vn -0.5556 -0.8314 0.0000 -vn -0.2616 -0.6316 -0.7298 -vn -0.3827 -0.9239 0.0000 -vn -0.1333 -0.6705 -0.7298 -vn -0.1951 -0.9808 0.0000 -vn 0.5922 0.3289 -0.7356 -vn 0.0000 1.0000 0.0028 -vn 0.5249 -0.5971 0.6066 -vn 0.0008 1.0000 0.0057 -vn 0.0017 0.9999 0.0082 -vn 0.0009 -1.0000 0.0068 -vn 0.0035 -0.9999 0.0081 -vn 0.0044 0.9999 0.0078 -vn 0.1141 0.9846 0.1326 -vn 0.2311 0.0000 -0.9729 -vn 0.2010 -0.4363 -0.8771 -vn 0.0000 0.4665 -0.8845 -vn 0.2010 0.4363 -0.8771 -vn 0.0044 -0.9999 0.0078 -vn 0.1135 -0.9848 0.1315 -vn 0.9048 0.4257 0.0081 -vn 0.0000 -0.9553 -0.2955 -vn 0.8101 -0.3455 -0.4736 -vn 0.0000 -0.4665 -0.8845 -vn 0.0654 -0.7103 0.7008 -vn 0.3015 0.9045 0.3015 -vn 0.0035 0.9999 0.0081 -vn 0.6547 0.0000 0.7559 -vn 0.5249 0.5971 0.6066 -vn 0.0000 -0.7071 -0.7071 -vn 0.2121 0.1531 -0.9651 -vn 0.6621 0.6989 -0.2704 -vn 0.8853 -0.3782 -0.2704 -vn 0.2345 -0.1035 -0.9666 -vn 0.2343 0.1039 -0.9666 -vn 0.7892 0.5513 -0.2704 -vn 0.9434 -0.1922 -0.2704 -vn 0.2478 -0.0519 -0.9674 -vn 0.9427 0.1954 -0.2704 -vn 0.8841 0.3811 -0.2704 -vn 0.9570 -0.0957 -0.2738 -vn 0.3072 -0.0307 -0.9511 -vn 0.1308 0.9843 0.1188 -vn 0.1316 0.9836 0.1235 -vn -0.0704 -0.9535 -0.2931 -vn 0.2386 -0.9682 0.0748 -vn 0.1249 0.9849 0.1201 -vn 0.1237 -0.9841 0.1272 -vn 0.1308 -0.9843 0.1188 -vn 0.1316 -0.9836 0.1235 -vn 0.2386 0.9682 0.0748 -vn 0.1249 -0.9849 0.1201 -vn 0.0186 -0.9994 0.0291 -vn 0.1263 -0.9857 0.1115 -vn -0.0704 0.9535 -0.2931 -vn 0.1710 0.9575 -0.2324 -vn 0.0186 0.9994 0.0291 -vn 0.1263 0.9857 0.1115 -vn 0.1192 0.9844 0.1289 -vn -0.3650 0.0000 -0.9310 -vn 0.6341 -0.4651 -0.6177 -vn 0.0168 0.9995 0.0282 -vn -0.3367 0.4792 -0.8105 -vn 0.1439 0.9837 0.1074 -vn 0.7547 0.0000 0.6560 -vn 0.6164 -0.5818 0.5307 -vn 0.6188 -0.5701 0.5403 -vn 0.7103 0.0000 -0.7039 -vn 0.7959 -0.5029 0.3369 -vn 0.6341 0.4651 -0.6177 -vn 0.7959 0.5029 0.3369 -vn 0.6164 0.5818 0.5307 -vn 0.6188 0.5701 0.5403 -vn 0.6064 0.5710 0.5534 -vn 0.9260 0.0000 0.3775 -vn 0.6064 -0.5710 0.5534 -vn 0.6379 0.5958 0.4880 -vn 0.6197 0.5780 0.5309 -vn 0.7653 0.0000 0.6437 -vn 0.6379 -0.5958 0.4880 -vn 0.6197 -0.5780 0.5309 -vn 0.6252 -0.5796 0.5225 -vn 0.6252 0.5796 0.5225 -vn 0.7625 0.0000 0.6469 -vn 0.1237 0.9841 0.1272 -vn 0.8022 0.0000 0.5970 -vn -0.1267 -0.4926 -0.8609 -vn -0.5060 -0.0523 -0.8610 -vn -0.5061 0.0506 -0.8609 -vn -0.4856 0.1515 -0.8610 -vn -0.4851 -0.1531 -0.8610 -vn -0.4443 -0.2476 -0.8610 -vn -0.4452 0.2461 -0.8609 -vn 0.0762 0.5029 -0.8609 -vn 0.1758 0.4773 -0.8609 -vn 0.2683 0.4321 -0.8609 -vn 0.3498 0.3693 -0.8609 -vn 0.4170 0.2913 -0.8609 -vn 0.4981 0.1032 -0.8610 -vn 0.4839 0.0500 -0.8737 -vn -0.3865 0.3307 -0.8609 -vn -0.3120 0.4017 -0.8609 -vn -0.2248 0.4563 -0.8609 -vn -0.1283 0.4922 -0.8610 -vn -0.0266 0.5080 -0.8610 -vn -0.0249 -0.5080 -0.8610 -vn 0.0779 -0.5026 -0.8610 -vn 0.1774 -0.4767 -0.8610 -vn 0.2698 -0.4312 -0.8610 -vn 0.4180 -0.2899 -0.8610 -vn 0.3511 -0.3681 -0.8610 -vn 0.4671 0.2014 -0.8610 -vn 0.4678 -0.1998 -0.8610 -vn 0.4984 -0.1015 -0.8610 -vn 0.5087 0.0009 -0.8609 -vn 0.4840 -0.0484 -0.8737 -vn -0.3854 -0.3319 -0.8610 -vn -0.3106 -0.4028 -0.8610 -vn -0.2232 -0.4570 -0.8610 -vn -0.7036 0.0703 -0.7071 -vn 0.5535 -0.4736 -0.6850 -vn -0.7033 -0.0727 -0.7071 -vn -0.5092 0.8139 -0.2797 -vn -0.2541 0.6827 -0.6850 -vn -0.3864 0.6176 -0.6850 -vn -0.3319 -0.9008 -0.2797 -vn -0.1091 -0.7203 -0.6850 -vn -0.5028 0.5272 -0.6850 -vn -0.6626 0.6947 -0.2797 -vn -0.5065 -0.8156 -0.2797 -vn -0.2518 -0.6836 -0.6850 -vn -0.5986 0.4152 -0.6850 -vn -0.7889 0.5471 -0.2797 -vn -0.5010 -0.5289 -0.6850 -vn -0.3843 -0.6189 -0.6850 -vn -0.8816 -0.3801 -0.2797 -vn -0.5972 -0.4172 -0.6850 -vn -0.7871 -0.5498 -0.2797 -vn -0.6603 -0.6970 -0.2797 -vn -0.6699 0.2861 -0.6850 -vn -0.8829 0.3771 -0.2797 -vn -0.9401 -0.1948 -0.2797 -vn -0.6689 -0.2884 -0.6850 -vn -0.7138 0.1454 -0.6850 -vn -0.9407 0.1917 -0.2797 -vn -0.9601 -0.0016 -0.2797 -vn -0.9567 -0.0989 -0.2738 -vn -0.9570 0.0957 -0.2738 -vn 0.7295 -0.6241 -0.2797 -vn 0.6376 -0.3525 -0.6850 -vn 0.8402 -0.4645 -0.2797 -vn 0.2391 0.9298 -0.2797 -vn 0.0356 0.7276 -0.6850 -vn 0.0470 0.9589 -0.2797 -vn 0.8386 0.4673 -0.2797 -vn 0.5520 0.4754 -0.6850 -vn 0.7274 0.6266 -0.2797 -vn 0.5889 -0.7582 -0.2797 -vn 0.9553 -0.0955 -0.2797 -vn 0.7246 0.0749 -0.6850 -vn 0.9550 0.0987 -0.2797 -vn 0.4450 0.5768 -0.6850 -vn 0.5864 0.7602 -0.2797 -vn 0.4242 -0.8612 -0.2797 -vn 0.4469 -0.5753 -0.6850 -vn 0.9165 -0.2859 -0.2797 -vn 0.7249 -0.0725 -0.6850 -vn 0.3197 0.6546 -0.6850 -vn 0.4213 0.8627 -0.2797 -vn 0.2422 -0.9290 -0.2797 -vn 0.3219 -0.6535 -0.6850 -vn 0.9156 0.2889 -0.2797 -vn 0.6947 0.2192 -0.6850 -vn 0.1814 0.7056 -0.6850 -vn 0.1838 -0.7049 -0.6850 -vn 0.6364 0.3546 -0.6850 -vn -0.1115 0.7199 -0.6850 -vn -0.1469 0.9487 -0.2797 -vn 0.6955 -0.2169 -0.6850 -vn -0.3349 0.8997 -0.2797 -vn 0.2022 0.4140 -0.8875 -vn 0.2814 0.3648 -0.8875 -vn 0.3491 0.3007 -0.8875 -vn 0.4025 0.2243 -0.8875 -vn -0.4840 0.0484 -0.8737 -vn -0.4607 -0.0008 -0.8875 -vn -0.4237 0.1810 -0.8875 -vn -0.3786 0.2626 -0.8875 -vn -0.4231 -0.1824 -0.8875 -vn -0.3777 -0.2638 -0.8875 -vn -0.3180 0.3334 -0.8875 -vn -0.2444 0.3906 -0.8875 -vn -0.1607 0.4318 -0.8875 -vn -0.0705 0.4553 -0.8875 -vn 0.0226 0.4602 -0.8875 -vn 0.0241 -0.4601 -0.8875 -vn 0.1162 -0.4458 -0.8875 -vn 0.2036 -0.4133 -0.8875 -vn 0.2826 -0.3639 -0.8875 -vn 0.3501 -0.2995 -0.8875 -vn -0.4838 -0.0500 -0.8737 -vn -0.4512 -0.0935 -0.8875 -vn -0.3169 -0.3345 -0.8875 -vn -0.2430 -0.3914 -0.8875 -vn -0.1593 -0.4323 -0.8875 -vn -0.0690 -0.4555 -0.8875 -vn 0.4399 -0.1372 -0.8875 -vn 0.4032 -0.2229 -0.8875 -vn 0.4394 0.1387 -0.8875 -vn 0.4583 0.0474 -0.8875 -vn 0.4584 -0.0458 -0.8875 -vn 0.1147 0.4462 -0.8875 -vn 0.6548 0.0000 0.7558 -vn 0.5244 0.5982 0.6059 -vn 0.0031 0.9999 0.0075 -vn 0.0476 0.6369 0.7695 -vn 0.0923 -0.7210 0.6867 -vn 0.0006 -1.0000 0.0059 -vn 0.0005 -1.0000 0.0062 -vn 0.0912 -0.9391 -0.3313 -vn -0.4908 0.8264 -0.2759 -vn 0.0038 -0.9999 0.0072 -vn 0.1133 -0.9848 0.1313 -vn 0.0038 0.9999 0.0072 -vn 0.1135 0.9848 0.1315 -vn 0.0031 -0.9999 0.0075 -vn 0.0006 1.0000 0.0059 -vn 0.0009 1.0000 0.0068 -vn 0.5244 -0.5982 0.6059 -vn 0.7345 0.0512 0.6766 -vn 0.7533 0.5799 0.3102 -vn 0.9802 -0.1268 0.1521 -vn 0.9290 -0.2108 -0.3041 -vn 0.6625 0.3265 -0.6741 -vn 0.2157 0.3867 0.8966 -vn -0.7783 0.2630 0.5701 -vn -0.4271 0.8959 0.1220 -vn -0.4385 -0.4812 -0.7590 -vn 0.0606 0.7457 -0.6635 -vn 0.1603 -0.6953 -0.7006 -vn -0.0476 0.6368 0.7695 -vn -0.3377 0.4676 0.8168 -vn 0.2296 0.9292 0.2897 -vn 0.5041 -0.5885 0.6321 -vn 0.9240 -0.2203 0.3124 -vn 0.0007 1.0000 0.0058 -vn 0.0007 -1.0000 0.0058 -vn 0.0005 1.0000 0.0061 -vn 0.0005 1.0000 0.0062 -vn 0.0030 -0.9999 0.0073 -vn 0.0005 -1.0000 0.0061 -vn 0.1132 0.9849 0.1312 -vn 0.0037 0.9999 0.0070 -vn 0.1133 0.9848 0.1313 -vn 0.8101 0.3455 -0.4736 -vn 0.0000 -0.2955 -0.9553 -vn 0.6080 -0.7728 0.1820 -vn 0.1132 -0.9849 0.1312 -vn 0.0037 -0.9999 0.0070 -vn 0.4143 -0.6945 0.5881 -vn 0.0923 -0.7209 0.6868 -vn 0.0030 0.9999 0.0073 -vn 0.8650 0.0000 0.5017 -vn 0.5041 0.5885 0.6321 -vn 0.9240 0.2203 0.3124 -vn 0.6229 0.0000 0.7823 -vn 0.0000 0.0000 -1.0000 -vn -0.7133 -0.1478 -0.6850 -vn 0.9627 0.0016 -0.2704 -vn 0.7994 0.0000 0.6008 -vn 0.7400 0.0000 0.6726 -vn 0.8513 0.0000 -0.5246 -vn 0.2476 0.0521 -0.9674 -vn 0.9551 0.0000 0.2963 -vn 0.7897 0.0000 0.6135 -vn 0.9964 0.0000 0.0850 -vn -0.4515 0.0920 -0.8875 -vn -0.7285 -0.0012 -0.6850 -vn 0.7725 0.0000 0.6350 -vn 0.1192 -0.9844 0.1289 -vn 0.1710 -0.9575 -0.2324 -vn 0.4655 -0.0927 -0.8802 -vn 0.9858 -0.1454 0.0833 -vn 0.3343 0.9136 0.2315 -vn 0.0000 0.9899 0.1417 -vn 0.0000 0.9598 0.2806 -vn 0.3333 0.8750 0.3510 -vn 0.5512 0.8342 0.0136 -vn 0.3908 0.8696 -0.3018 -vn 0.3747 0.9243 -0.0728 -vn 0.4162 0.7524 -0.5105 -vn 0.0001 -0.7158 0.6982 -vn 0.1071 -0.7247 0.6806 -vn 0.4825 -0.6439 -0.5938 -vn 0.0002 -0.7156 0.6984 -vn 0.0822 -0.7312 0.6771 -vn 0.0001 -0.7160 0.6980 -vn 0.0002 -0.7153 0.6988 -vn 0.1072 -0.7246 0.6808 -vn 0.0000 -0.7161 0.6980 -vn 0.0000 -0.8201 -0.5722 -vn 0.5048 -0.6537 0.5637 -vn 0.0477 -0.7005 0.7120 -vn 0.0003 -0.7124 0.7017 -vn 0.6003 -0.7997 0.0003 -vn 0.1333 -0.6705 -0.7298 -vn 0.0003 -0.7129 0.7013 -vn 0.0003 -0.7134 0.7007 -vn 0.0003 -0.7140 0.7002 -vn 0.0003 -0.7144 0.6997 -vn 0.0003 -0.7149 0.6992 -vn 0.6157 0.7771 -0.1303 -vn 0.6474 0.7621 0.0031 -vn 0.6435 0.7653 0.0118 -vn 0.5410 0.7705 -0.3370 -vn 0.5647 0.8027 0.1918 -vn 0.6427 0.7620 0.0785 -vn 0.5565 0.8308 0.0061 -vn 0.5366 0.8438 0.0086 -vn 0.1975 0.9803 -0.0037 -vn 0.0000 1.0000 -0.0022 -vn 0.2098 0.9777 -0.0013 -vn 0.3700 0.9290 -0.0010 -vn 0.3991 0.9169 0.0013 -vn 0.5081 0.8613 0.0016 -vn 0.3179 0.9450 0.0770 -vn 0.4736 0.8802 0.0305 -vn 0.5655 0.8247 -0.0016 -vn 0.5882 0.8086 0.0044 -vn 0.4648 0.8854 -0.0038 -vn 0.0000 1.0000 -0.0048 -vn 0.5289 0.8481 -0.0314 -vn 0.5178 0.8554 0.0093 -vn 0.5764 0.8168 0.0241 -vn 0.5477 0.8322 0.0860 -vn 0.4875 0.8586 0.1583 -vn 0.4915 0.8274 0.2715 -vn 0.2310 0.7371 -0.6350 -vn 0.0000 0.9139 0.4059 -vn 0.4848 0.8613 -0.1518 -vn 0.0000 0.8921 -0.4519 -vn 0.0000 0.7239 -0.6899 -vn -0.4521 0.0450 -0.8908 -vn -0.4201 0.0856 -0.9034 -vn -0.4519 -0.0462 -0.8908 -vn -0.4301 -0.0003 -0.9028 -vn 0.5176 -0.0478 -0.8543 -vn 0.4268 -0.1081 -0.8979 -vn 0.5173 0.0488 -0.8544 -vn 0.4262 0.1087 -0.8980 -vn 0.2908 0.1434 -0.9460 -vn 0.2914 -0.1432 -0.9458 -vn 0.0141 -0.3830 -0.9236 -vn -0.0636 -0.3866 -0.9200 -vn -0.1433 -0.3723 -0.9170 -vn -0.2167 -0.3432 -0.9139 -vn -0.2862 -0.2987 -0.9104 -vn -0.3455 -0.2392 -0.9074 -vn -0.3910 -0.1673 -0.9050 -vn -0.4198 -0.0863 -0.9035 -vn 0.2626 -0.2421 -0.9340 -vn 0.2143 -0.2905 -0.9326 -vn 0.1553 -0.3331 -0.9300 -vn 0.0879 -0.3646 -0.9270 -vn 0.0134 0.3829 -0.9237 -vn -0.1417 0.3714 -0.9176 -vn -0.0658 0.3847 -0.9207 -vn -0.2174 0.3429 -0.9138 -vn -0.2868 0.2983 -0.9103 -vn -0.3460 0.2387 -0.9073 -vn -0.3914 0.1666 -0.9050 -vn 0.2620 0.2425 -0.9341 -vn 0.2136 0.2908 -0.9326 -vn 0.1546 0.3333 -0.9300 -vn 0.0872 0.3647 -0.9270 -vn 0.4369 -0.8325 0.3407 -vn 0.3403 -0.8972 0.2813 -vn 0.4460 -0.8497 0.2813 -vn 0.0000 -0.9402 0.3407 -vn 0.1157 -0.9526 0.2813 -vn 0.1133 -0.9333 0.3407 -vn -0.8086 -0.4244 0.4073 -vn -0.9098 -0.3450 0.2306 -vn -0.8539 -0.3238 0.4074 -vn 0.9333 -0.1133 0.3407 -vn 0.9579 -0.0579 0.2811 -vn 0.9385 -0.0568 0.3405 -vn 0.9128 -0.2250 0.3407 -vn 0.8972 -0.3403 0.2813 -vn 0.9317 -0.2297 0.2813 -vn -0.3238 0.8539 0.4074 -vn -0.4523 0.8615 0.2306 -vn -0.3451 0.9098 0.2306 -vn 0.5188 0.7516 0.4074 -vn 0.6453 0.7283 0.2305 -vn 0.6056 0.6836 0.4074 -vn 0.1101 0.9066 0.4074 -vn 0.0000 0.9730 0.2306 -vn 0.1172 0.9659 0.2306 -vn -0.9066 -0.1100 0.4074 -vn -0.9448 -0.2329 0.2306 -vn -0.9659 -0.1173 0.2306 -vn 0.8086 0.4244 0.4074 -vn 0.9098 0.3450 0.2306 -vn 0.8539 0.3238 0.4074 -vn 0.5541 -0.8027 0.2205 -vn 0.6234 0.7037 0.3407 -vn 0.5452 0.7897 0.2813 -vn 0.5341 0.7737 0.3407 -vn 0.3458 0.9120 0.2205 -vn 0.4533 0.8636 0.2205 -vn 0.9116 -0.0551 0.4073 -vn 0.9730 0.0000 0.2306 -vn 0.9718 -0.0588 0.2282 -vn -0.8086 0.4244 0.4074 -vn -0.9098 0.3450 0.2306 -vn -0.8616 0.4522 0.2306 -vn 0.8867 0.2185 0.4073 -vn 0.9448 0.2329 0.2306 -vn 0.9754 0.0000 0.2205 -vn -0.8008 0.5527 0.2306 -vn -0.7516 0.5188 0.4074 -vn 0.9470 0.2334 0.2205 -vn 0.9683 0.1176 0.2205 -vn -0.2185 0.8867 0.4074 -vn -0.2328 0.9448 0.2306 -vn 0.4245 -0.8086 0.4074 -vn 0.5527 -0.8008 0.2306 -vn 0.4522 -0.8616 0.2306 -vn -0.9116 0.0551 0.4073 -vn -0.9730 0.0000 0.2306 -vn -0.9718 0.0588 0.2282 -vn 0.2185 -0.8867 0.4074 -vn 0.3451 -0.9098 0.2306 -vn 0.2328 -0.9448 0.2306 -vn 0.2185 0.8867 0.4074 -vn 0.3451 0.9098 0.2306 -vn 0.3238 0.8539 0.4074 -vn 0.3458 -0.9120 0.2205 -vn 0.2334 -0.9470 0.2205 -vn -0.6836 -0.6056 0.4074 -vn -0.8008 -0.5528 0.2306 -vn -0.7516 -0.5188 0.4073 -vn -0.9116 -0.0551 0.4073 -vn -0.9133 0.0000 0.4074 -vn 0.3334 -0.8791 0.3407 -vn 0.2296 -0.9317 0.2813 -vn 0.6836 -0.6056 0.4074 -vn 0.6452 -0.7284 0.2306 -vn 0.6056 -0.6836 0.4074 -vn 0.7183 0.6363 0.2813 -vn 0.6363 0.7183 0.2813 -vn 0.7737 0.5341 0.3407 -vn 0.7037 0.6234 0.3407 -vn 0.8497 0.4459 0.2813 -vn 0.7898 0.5451 0.2813 -vn 0.8325 0.4369 0.3407 -vn 0.8972 0.3403 0.2813 -vn 0.9128 0.2250 0.3407 -vn 0.8791 0.3334 0.3407 -vn 0.9526 0.1156 0.2813 -vn 0.9317 0.2296 0.2813 -vn 0.9402 0.0000 0.3407 -vn 0.9579 0.0579 0.2811 -vn 0.9385 0.0568 0.3405 -vn 0.9470 -0.2334 0.2205 -vn -0.1101 0.9066 0.4074 -vn 0.0000 0.9132 0.4074 -vn 0.1133 0.9333 0.3407 -vn 0.2297 0.9317 0.2813 -vn 0.1157 0.9526 0.2813 -vn 0.9526 -0.1157 0.2813 -vn 0.2250 0.9128 0.3407 -vn 0.3403 0.8972 0.2813 -vn 0.4369 0.8325 0.3407 -vn 0.3334 0.8791 0.3407 -vn 0.5541 0.8027 0.2205 -vn 0.8867 -0.2185 0.4074 -vn 0.9098 -0.3450 0.2306 -vn 0.8539 -0.3238 0.4074 -vn 0.5341 -0.7737 0.3407 -vn 0.6363 -0.7183 0.2813 -vn 0.6234 -0.7037 0.3407 -vn -0.2185 -0.8867 0.4074 -vn -0.3451 -0.9098 0.2306 -vn -0.3238 -0.8539 0.4074 -vn 0.9736 0.0589 0.2204 -vn 0.7037 -0.6234 0.3407 -vn 0.7183 -0.6363 0.2813 -vn 0.7737 -0.5341 0.3407 -vn 0.7898 -0.5451 0.2813 -vn 0.8497 -0.4460 0.2813 -vn 0.8325 -0.4369 0.3407 -vn 0.8791 -0.3334 0.3407 -vn 0.9736 -0.0589 0.2204 -vn 0.0000 0.9596 0.2813 -vn 0.0000 0.9402 0.3407 -vn 0.1176 -0.9683 0.2205 -vn 0.4533 -0.8636 0.2205 -vn 0.9066 -0.1100 0.4074 -vn 0.9448 -0.2329 0.2306 -vn 0.2250 -0.9128 0.3407 -vn 0.6468 0.7301 0.2205 -vn 0.7301 0.6468 0.2205 -vn 0.8027 0.5541 0.2205 -vn 0.8636 0.4533 0.2205 -vn 0.9120 0.3459 0.2205 -vn 0.9333 0.1133 0.3407 -vn 0.9596 0.0000 0.2813 -vn 0.1176 0.9683 0.2205 -vn 0.2334 0.9470 0.2205 -vn 0.9683 -0.1176 0.2205 -vn 0.4459 0.8497 0.2813 -vn -0.9659 0.1173 0.2306 -vn -0.9066 0.1100 0.4073 -vn 0.5451 -0.7897 0.2813 -vn 0.6468 -0.7301 0.2205 -vn -0.8867 -0.2185 0.4074 -vn 0.8027 -0.5541 0.2205 -vn 0.7301 -0.6468 0.2205 -vn 0.8636 -0.4533 0.2205 -vn 0.9120 -0.3459 0.2205 -vn 0.9116 0.0551 0.4073 -vn 0.9659 0.1173 0.2306 -vn 0.9718 0.0588 0.2282 -vn -0.5188 0.7516 0.4074 -vn -0.6453 0.7283 0.2305 -vn -0.5528 0.8007 0.2306 -vn 0.0000 -0.9754 0.2205 -vn 0.8008 0.5527 0.2306 -vn 0.8616 0.4522 0.2306 -vn 0.4523 0.8615 0.2306 -vn 0.4244 0.8086 0.4074 -vn 0.3238 -0.8539 0.4074 -vn 0.6836 0.6056 0.4074 -vn 0.7516 0.5188 0.4074 -vn 0.9066 0.1100 0.4073 -vn 0.9132 0.0000 0.4074 -vn 0.7516 -0.5188 0.4073 -vn 0.8086 -0.4244 0.4073 -vn 0.1101 -0.9066 0.4074 -vn 0.0000 -0.9596 0.2813 -vn 0.5188 -0.7516 0.4073 -vn -0.5817 0.5729 0.5773 -vn -0.6511 0.0000 0.7590 -vn -0.5256 0.5915 0.6114 -vn -0.0041 0.9999 0.0097 -vn -0.0196 0.9995 0.0244 -vn -0.0057 0.9999 0.0096 -vn -0.7911 -0.5487 -0.2704 -vn -0.1815 -0.1982 -0.9632 -vn -0.2124 -0.1528 -0.9651 -vn -0.5269 0.8478 -0.0601 -vn -0.8279 0.5595 -0.0372 -vn -0.8373 0.5386 -0.0941 -vn -0.0009 1.0000 -0.0034 -vn 0.2025 0.9791 -0.0174 -vn 0.4059 0.9130 -0.0411 -vn 0.5972 0.7985 -0.0755 -vn 0.6900 0.7238 0.0000 -vn 0.7504 0.6505 -0.1171 -vn -0.1629 -0.9808 0.1072 -vn -0.5996 -0.8003 0.0000 -vn -0.4390 0.7593 0.4804 -vn -0.9239 0.3827 0.0000 -vn -0.1870 0.9823 -0.0072 -vn -0.8314 0.5556 0.0000 -vn -0.7071 0.7071 0.0000 -vn -0.3780 0.9255 -0.0241 -vn 0.0520 0.9391 -0.3395 -vn 0.0000 0.8942 -0.4477 -vn -0.7020 0.7098 -0.0580 -vn -0.0040 0.9948 -0.1017 -vn 0.0119 0.9806 -0.1954 -vn -0.9188 0.3847 -0.0884 -vn -0.2594 0.9656 -0.0186 -vn -0.1829 0.9827 -0.0285 -vn -0.0772 0.9956 -0.0522 -vn -0.5505 0.8338 -0.0405 -vn -0.8264 0.5581 -0.0746 -vn -0.1629 0.9808 0.1072 -vn -0.0004 1.0000 0.0057 -vn -0.0039 1.0000 0.0055 -vn -0.0007 1.0000 0.0057 -vn -0.2262 0.9737 -0.0254 -vn -0.1636 0.9864 -0.0152 -vn -0.0772 0.9970 -0.0059 -vn -0.0084 0.9999 -0.0002 -vn -0.0246 0.9997 -0.0007 -vn -0.0038 -1.0000 0.0058 -vn -0.2860 -0.9280 0.2389 -vn -0.0006 -1.0000 0.0058 -vn -0.0097 0.9999 -0.0002 -vn -0.1028 0.9947 0.0068 -vn -0.0627 0.9980 0.0000 -vn -0.0844 0.9964 0.0043 -vn -0.0749 0.9972 0.0009 -vn -0.0331 0.9994 -0.0025 -vn -0.0394 0.9992 -0.0024 -vn -0.1712 -0.9852 0.0011 -vn -0.2247 -0.9743 0.0157 -vn -0.1542 -0.9880 0.0050 -vn -0.0454 -0.7124 0.7003 -vn -0.1028 -0.9947 0.0068 -vn -0.0610 -0.7082 0.7034 -vn -0.3842 -0.9216 0.0545 -vn -0.5289 -0.8483 0.0257 -vn -0.4609 -0.8842 0.0757 -vn -0.0557 -0.9984 -0.0020 -vn -0.0506 -0.9987 -0.0016 -vn -0.7029 0.6891 0.1759 -vn -0.8915 0.3778 0.2498 -vn -0.6080 0.7728 0.1820 -vn -0.1567 0.9813 0.1113 -vn -0.8113 0.5610 0.1644 -vn -0.6611 0.7486 0.0498 -vn -0.8116 0.5813 0.0575 -vn -0.8186 -0.5022 0.2786 -vn -0.5101 -0.8291 0.2288 -vn -0.5018 -0.8474 0.1733 -vn -0.6711 0.7289 0.1350 -vn -0.5224 0.8516 0.0423 -vn -0.7037 -0.6711 0.2333 -vn -0.8126 -0.4620 0.3552 -vn -0.5394 0.8352 0.1066 -vn -0.4023 0.9148 0.0353 -vn -0.5872 -0.7876 0.1864 -vn -0.7150 -0.6305 0.3020 -vn -0.4241 0.9019 0.0811 -vn -0.2984 0.9540 0.0283 -vn -0.4792 -0.8660 0.1426 -vn -0.6098 -0.7538 0.2448 -vn -0.3238 0.9443 0.0587 -vn -0.2271 0.9736 0.0213 -vn -0.3816 -0.9185 0.1036 -vn -0.5073 -0.8406 0.1897 -vn -0.2523 0.9668 0.0409 -vn -0.1786 0.9838 0.0151 -vn -0.3062 -0.9492 0.0723 -vn -0.4114 -0.9007 0.1397 -vn -0.4943 0.8632 0.1022 -vn -0.4953 0.8679 0.0372 -vn -0.1461 0.9891 0.0159 -vn -0.1250 0.9921 0.0096 -vn -0.1461 -0.9891 0.0159 -vn -0.0891 -0.6993 0.7092 -vn -0.1264 -0.6904 0.7123 -vn -0.2523 -0.9668 0.0409 -vn -0.1600 -0.6806 0.7149 -vn -0.5658 0.8224 0.0588 -vn -0.5259 0.8479 0.0669 -vn -0.4945 0.8688 0.0241 -vn -0.2044 -0.9789 0.0046 -vn -0.3532 -0.9341 0.0510 -vn -0.3042 -0.9525 0.0096 -vn -0.4629 0.8847 0.0545 -vn -0.4635 0.8776 0.1224 -vn -0.4629 -0.8847 0.0545 -vn -0.3988 -0.9169 0.0154 -vn -0.3532 0.9341 0.0510 -vn -0.3738 0.9132 0.1623 -vn -0.5658 -0.8224 0.0588 -vn -0.4945 -0.8688 0.0241 -vn -0.2383 0.9700 0.0483 -vn -0.2188 0.9571 0.1898 -vn -0.1033 -0.9946 0.0015 -vn -0.2383 -0.9700 0.0483 -vn -0.1201 0.9916 0.0467 -vn -0.1201 -0.9916 0.0467 -vn -0.9938 0.0724 0.0846 -vn -0.9888 0.1206 0.0879 -vn -0.9858 0.1454 0.0833 -vn -0.9938 -0.0724 0.0846 -vn -0.9960 0.0000 0.0887 -vn -0.9964 0.0000 0.0850 -vn -0.9551 0.2856 0.0790 -vn -0.9551 -0.2856 0.0790 -vn -0.9888 -0.1206 0.0879 -vn -0.9858 -0.1454 0.0833 -vn -0.9672 0.2392 0.0857 -vn -0.9061 0.4169 0.0722 -vn -0.9061 -0.4169 0.0722 -vn -0.9672 -0.2392 0.0857 -vn -0.9314 0.3545 0.0826 -vn -0.8419 0.5359 0.0636 -vn -0.8419 -0.5359 0.0636 -vn -0.9314 -0.3545 0.0826 -vn -0.8820 0.4645 0.0785 -vn -0.7656 0.6410 0.0538 -vn -0.7656 -0.6410 0.0538 -vn -0.8820 -0.4645 0.0785 -vn -0.8198 0.5678 0.0739 -vn -0.6806 0.7313 0.0435 -vn -0.6806 -0.7313 0.0435 -vn -0.8198 -0.5678 0.0739 -vn -0.7456 0.6628 0.0688 -vn -0.5895 0.8070 0.0335 -vn -0.5895 -0.8070 0.0335 -vn -0.7456 -0.6628 0.0688 -vn -0.6605 0.7480 0.0637 -vn -0.6605 -0.7480 0.0637 -vn -0.4558 0.8684 0.1953 -vn -0.3482 0.9181 0.1890 -vn -0.4563 0.8695 0.1890 -vn -0.3482 -0.9181 0.1890 -vn -0.4558 -0.8684 0.1953 -vn -0.4563 -0.8695 0.1890 -vn -0.6511 0.7350 0.1890 -vn -0.5571 0.8071 0.1953 -vn -0.5578 0.8081 0.1890 -vn -0.1184 -0.9748 0.1890 -vn -0.2347 -0.9522 0.1953 -vn -0.2350 -0.9534 0.1890 -vn -0.4624 -0.8810 0.0995 -vn -0.2381 0.9661 0.0995 -vn -0.5652 -0.8189 0.0995 -vn -0.1195 -0.9842 0.1307 -vn -0.2360 -0.9574 0.1664 -vn -0.2373 -0.9626 0.1307 -vn -0.9736 0.1182 0.1953 -vn -0.9534 0.2350 0.1890 -vn -0.9748 0.1184 0.1890 -vn -0.9896 -0.0598 0.1306 -vn -0.9861 0.0000 0.1664 -vn -0.9914 0.0000 0.1307 -vn -0.9802 -0.0593 0.1888 -vn -0.9807 0.0000 0.1953 -vn -0.9820 0.0000 0.1890 -vn -0.9626 -0.2373 0.1307 -vn -0.9789 -0.1188 0.1664 -vn -0.9842 -0.1195 0.1307 -vn -0.9181 -0.3482 0.1890 -vn -0.9522 -0.2347 0.1953 -vn -0.9534 -0.2350 0.1890 -vn -0.9220 -0.3497 0.1664 -vn -0.9270 -0.3515 0.1307 -vn -0.8695 -0.4563 0.1890 -vn -0.9170 -0.3478 0.1953 -vn -0.8731 -0.4582 0.1664 -vn -0.8778 -0.4607 0.1307 -vn -0.8071 -0.5571 0.1953 -vn -0.8081 -0.5578 0.1890 -vn -0.8115 -0.5601 0.1664 -vn -0.8159 -0.5632 0.1307 -vn -0.7350 -0.6511 0.1890 -vn -0.7421 -0.6574 0.1307 -vn -0.6503 -0.7341 0.1953 -vn -0.6511 -0.7350 0.1890 -vn -0.6539 -0.7381 0.1664 -vn -0.6574 -0.7421 0.1307 -vn -0.6539 0.7381 0.1664 -vn -0.5632 0.8159 0.1307 -vn -0.6574 0.7421 0.1307 -vn 0.0000 0.9989 0.0463 -vn -0.3528 0.9304 0.0995 -vn -0.9661 0.2381 0.0995 -vn -0.5632 -0.8159 0.1307 -vn -0.5578 -0.8081 0.1890 -vn -0.3528 -0.9304 0.0995 -vn -0.6598 0.7448 0.0995 -vn -0.6598 -0.7448 0.0995 -vn -0.7381 0.6539 0.1664 -vn -0.7421 0.6574 0.1307 -vn -0.7341 0.6503 0.1953 -vn -0.7350 0.6511 0.1890 -vn -0.8189 -0.5652 0.0995 -vn -0.8115 0.5601 0.1664 -vn -0.8159 0.5632 0.1307 -vn -0.8071 0.5571 0.1953 -vn -0.8081 0.5578 0.1890 -vn -0.7448 0.6598 0.0995 -vn -0.8810 -0.4624 0.0995 -vn -0.8778 0.4607 0.1307 -vn -0.8695 0.4563 0.1890 -vn -0.8810 0.4624 0.0995 -vn -0.9220 0.3497 0.1664 -vn -0.9270 0.3515 0.1307 -vn -0.9170 0.3478 0.1953 -vn -0.9181 0.3482 0.1890 -vn -0.9661 -0.2381 0.0995 -vn -0.9626 0.2373 0.1307 -vn -0.9304 0.3528 0.0995 -vn -0.9896 0.0598 0.1306 -vn -0.9789 0.1188 0.1664 -vn -0.9842 0.1195 0.1307 -vn -0.9942 0.0601 0.0886 -vn -0.9878 0.1199 0.0995 -vn -0.9736 -0.1182 0.1953 -vn -0.9748 -0.1184 0.1890 -vn -0.9942 -0.0601 0.0886 -vn -0.9950 0.0000 0.0995 -vn -0.9802 0.0593 0.1888 -vn -0.9574 0.2360 0.1664 -vn -0.1199 -0.9878 0.0995 -vn -0.1188 0.9789 0.1664 -vn -0.1195 0.9842 0.1307 -vn -0.1184 0.9748 0.1890 -vn -0.2381 -0.9661 0.0995 -vn -0.2373 0.9626 0.1307 -vn -0.2350 0.9534 0.1890 -vn -0.1182 0.9736 0.1953 -vn -0.4607 -0.8778 0.1307 -vn -0.5601 -0.8115 0.1664 -vn -0.3497 0.9220 0.1664 -vn -0.3515 0.9270 0.1307 -vn -0.3478 0.9170 0.1953 -vn -0.3515 -0.9270 0.1307 -vn -0.4582 0.8731 0.1664 -vn -0.4607 0.8778 0.1307 -vn -0.5652 0.8189 0.0995 -vn -0.4582 -0.8731 0.1664 -vn -0.7448 -0.6598 0.0995 -vn -0.7381 -0.6539 0.1664 -vn -0.8189 0.5652 0.0995 -vn -0.8731 0.4582 0.1664 -vn -0.9304 -0.3528 0.0995 -vn -0.9574 -0.2360 0.1664 -vn -0.9932 -0.0601 0.0993 -vn -0.9843 -0.0595 0.1662 -vn -0.9932 0.0601 0.0993 -vn -0.9843 0.0595 0.1662 -vn -0.1199 0.9878 0.0995 -vn -0.2360 0.9574 0.1664 -vn -0.4624 0.8810 0.0995 -vn -0.1941 0.9809 0.0108 -vn -0.1473 0.9890 0.0078 -vn -0.2699 0.9628 0.0131 -vn -0.3879 0.9216 0.0136 -vn -0.5198 0.8542 0.0123 -vn -0.6668 0.7451 0.0096 -vn -0.8197 0.5727 0.0063 -vn -0.5184 0.8551 0.0060 -vn -0.0145 -0.9997 0.0198 -vn -0.0005 -1.0000 0.0058 -vn -0.0017 -0.9999 0.0082 -vn -0.0211 0.9998 -0.0032 -vn -0.0406 0.9991 -0.0016 -vn -0.0506 0.9987 0.0014 -vn -0.0898 0.9959 0.0049 -vn -0.1361 -0.9906 0.0134 -vn -0.2072 -0.9777 0.0342 -vn -0.1870 -0.9819 0.0284 -vn -0.2580 -0.9661 0.0054 -vn -0.3018 -0.9528 0.0337 -vn -0.1069 -0.9942 0.0043 -vn -0.0968 -0.9953 0.0038 -vn -0.0238 -0.7118 0.7020 -vn -0.0749 -0.9972 0.0009 -vn -0.0789 -0.9969 -0.0010 -vn -0.2737 -0.9596 0.0646 -vn -0.2472 -0.9677 0.0484 -vn -0.2008 -0.9792 0.0275 -vn -0.3343 0.9373 0.0988 -vn -0.2472 0.9677 0.0484 -vn -0.3062 0.9492 0.0723 -vn -0.5289 0.8483 0.0257 -vn -0.3842 0.9216 0.0545 -vn -0.4609 0.8842 0.0757 -vn -0.3238 -0.9443 0.0587 -vn -0.2069 -0.6564 0.7255 -vn -0.4114 0.9007 0.1397 -vn -0.3816 0.9185 0.1036 -vn -0.6213 0.7827 0.0376 -vn -0.5464 0.8306 0.1074 -vn -0.6213 -0.7827 0.0376 -vn -0.5464 -0.8306 0.1074 -vn -0.4241 -0.9019 0.0811 -vn -0.2754 -0.6225 0.7325 -vn -0.5073 0.8406 0.1897 -vn -0.4792 0.8660 0.1426 -vn -0.7127 0.6996 0.0510 -vn -0.6399 0.7549 0.1436 -vn -0.7127 -0.6996 0.0510 -vn -0.6399 -0.7549 0.1436 -vn -0.5394 -0.8352 0.1066 -vn -0.3527 -0.5716 0.7408 -vn -0.6098 0.7538 0.2448 -vn -0.5872 0.7876 0.1864 -vn -0.7996 0.5970 0.0648 -vn -0.7320 0.6567 0.1812 -vn -0.7996 -0.5970 0.0648 -vn -0.7320 -0.6567 0.1812 -vn -0.6711 -0.7289 0.1350 -vn -0.4394 -0.4939 0.7503 -vn -0.7150 0.6305 0.3020 -vn -0.7037 0.6711 0.2333 -vn -0.8773 0.4734 0.0780 -vn -0.8184 0.5318 0.2179 -vn -0.8773 -0.4734 0.0780 -vn -0.8184 -0.5318 0.2179 -vn -0.8113 -0.5610 0.1644 -vn -0.5338 -0.3768 0.7570 -vn -0.8126 0.4620 0.3552 -vn -0.8186 0.5022 0.2786 -vn -0.9398 0.3298 0.0894 -vn -0.9398 -0.3298 0.0894 -vn -0.8915 -0.3778 0.2498 -vn -0.4943 -0.8632 0.1022 -vn -0.4143 -0.6945 0.5881 -vn -0.9465 0.0935 -0.3087 -vn -0.6836 0.0000 -0.7298 -vn -0.8101 0.3455 -0.4736 -vn -0.1547 0.9832 0.0968 -vn -0.7029 -0.6891 0.1759 -vn -0.6080 -0.7728 0.1820 -vn -0.1235 -0.9842 0.1268 -vn -0.0057 -0.9999 0.0096 -vn -0.1141 -0.9846 0.1326 -vn -0.1581 -0.9793 0.1259 -vn -0.5101 0.8291 0.2288 -vn -0.5018 0.8474 0.1733 -vn -0.0006 1.0000 0.0058 -vn -0.0037 1.0000 0.0057 -vn -0.0005 1.0000 0.0058 -vn -0.0394 -0.9992 -0.0024 -vn -0.4371 -0.8993 0.0160 -vn -0.3343 -0.9373 0.0988 -vn -0.0581 0.9983 0.0039 -vn -0.0506 0.9987 -0.0016 -vn -0.0855 -0.9963 -0.0010 -vn -0.1519 -0.9883 0.0158 -vn -0.1075 0.9941 0.0152 -vn -0.0968 0.9953 0.0038 -vn -0.5220 0.8529 0.0049 -vn -0.5139 0.8576 0.0173 -vn -0.5289 0.8481 -0.0314 -vn -0.1529 0.9878 0.0305 -vn -0.1361 0.9906 0.0134 -vn -0.2383 0.8827 -0.4050 -vn -0.2684 0.9607 0.0699 -vn -0.1870 0.9819 0.0284 -vn -0.2008 0.9792 0.0275 -vn -0.4371 0.8993 0.0160 -vn -0.5265 0.8500 0.0186 -vn -0.2080 0.9767 0.0530 -vn -0.1745 -0.9843 0.0236 -vn -0.2495 -0.9671 0.0490 -vn -0.1168 -0.9931 0.0080 -vn -0.4120 -0.9028 0.1231 -vn -0.3420 -0.9360 0.0832 -vn -0.4120 0.9028 0.1231 -vn -0.3049 0.9500 0.0671 -vn -0.4936 -0.8527 0.1708 -vn -0.4936 0.8527 0.1708 -vn -0.5856 -0.7785 0.2257 -vn -0.5856 0.7785 0.2257 -vn -0.6770 -0.6796 0.2827 -vn -0.6769 0.6796 0.2827 -vn -0.7628 -0.5513 0.3377 -vn -0.7628 0.5513 0.3377 -vn -0.8355 -0.3920 0.3851 -vn -0.8355 0.3920 0.3851 -vn -0.5345 -0.8061 0.2540 -vn -0.5345 0.8061 0.2540 -vn -0.1567 -0.9813 0.1113 -vn -0.0595 -0.9982 -0.0006 -vn -0.1693 0.9097 -0.3790 -vn -0.2986 0.9165 -0.2661 -vn -0.3895 0.9065 -0.1630 -vn -0.3909 0.9198 -0.0338 -vn -0.0211 0.9998 -0.0005 -vn -0.0092 0.9999 -0.0002 -vn -0.0185 0.9998 -0.0003 -vn -0.0081 0.9999 -0.0019 -vn -0.0113 0.9999 -0.0003 -vn -0.0196 0.9998 -0.0009 -vn -0.0203 0.9998 -0.0004 -vn -0.0171 0.9998 -0.0005 -vn -0.0178 0.9998 -0.0014 -vn -0.1235 0.9842 0.1268 -vn -0.1141 0.9846 0.1326 -vn -0.0664 0.9978 -0.0045 -vn -0.0188 0.9998 -0.0007 -vn -0.0580 0.9983 -0.0027 -vn -0.0168 0.9998 -0.0002 -vn -0.1412 0.9899 -0.0119 -vn -0.0637 0.9980 -0.0036 -vn -0.1237 0.9923 -0.0069 -vn -0.0558 0.9984 0.0005 -vn -0.0228 0.9997 -0.0012 -vn -0.3321 0.9422 -0.0443 -vn -0.1959 0.9804 -0.0199 -vn -0.1355 0.9907 -0.0096 -vn -0.1720 0.9850 -0.0116 -vn -0.1181 0.9930 0.0002 -vn -0.2904 0.9563 -0.0350 -vn -0.1881 0.9820 -0.0161 -vn -0.2568 0.9662 -0.0206 -vn -0.1639 0.9864 -0.0003 -vn -0.4389 0.8965 -0.0597 -vn -0.2796 0.9597 -0.0285 -vn -0.3938 0.9185 -0.0357 -vn -0.2456 0.9694 -0.0029 -vn -0.5887 0.8035 -0.0882 -vn -0.4247 0.9040 -0.0489 -vn -0.5396 0.8402 -0.0538 -vn -0.3777 0.9259 -0.0088 -vn -0.4926 0.8671 -0.0742 -vn -0.7338 0.6690 -0.1181 -vn -0.5737 0.8158 -0.0728 -vn -0.6915 0.7186 -0.0740 -vn -0.5211 0.8533 -0.0170 -vn -0.6438 0.7577 -0.1068 -vn -0.8613 0.4867 -0.1457 -vn -0.7215 0.6853 -0.0985 -vn -0.6749 0.7374 -0.0269 -vn -0.7783 0.6124 -0.1389 -vn -0.1594 -0.9854 0.0591 -vn -0.6004 -0.7997 0.0020 -vn -0.0198 -0.9994 0.0268 -vn -0.0041 -0.9999 0.0097 -vn -0.5458 0.8326 -0.0940 -vn -0.8553 0.5033 -0.1229 -vn -0.1594 0.9854 0.0591 -vn -0.0137 -0.9998 -0.0152 -vn -0.6010 -0.7992 0.0043 -vn -0.8861 0.4325 -0.1664 -vn -0.5646 0.8183 -0.1080 -vn -0.5396 0.8382 -0.0788 -vn -0.0145 0.9997 0.0198 -vn -0.0017 0.9999 0.0082 -vn -0.0037 -1.0000 0.0057 -vn -0.6160 0.7853 -0.0616 -vn 0.1835 -0.9141 -0.3616 -vn 0.0016 -0.4241 -0.9056 -vn 0.0851 -0.4046 -0.9105 -vn 0.3568 -0.8579 -0.3696 -vn 0.1600 -0.3717 -0.9144 -vn 0.5155 -0.7696 -0.3767 -vn 0.2260 -0.3263 -0.9178 -vn 0.6377 -0.6670 -0.3854 -vn 0.2709 -0.2733 -0.9230 -vn 0.4280 -0.1281 -0.8947 -vn -0.9466 -0.0933 -0.3087 -vn -0.4755 0.0002 -0.8797 -vn -0.4520 -0.0447 -0.8909 -vn -0.4357 -0.1809 -0.8817 -vn -0.9338 -0.1864 -0.3052 -vn -0.4655 -0.0927 -0.8802 -vn -0.3879 -0.2600 -0.8843 -vn -0.8783 -0.3651 -0.3086 -vn -0.3248 -0.3264 -0.8876 -vn -0.7885 -0.5289 -0.3138 -vn -0.2502 -0.3773 -0.8916 -vn -0.6684 -0.6712 -0.3206 -vn -0.1678 -0.4111 -0.8960 -vn -0.5229 -0.7865 -0.3286 -vn -0.0819 -0.4271 -0.9005 -vn -0.3581 -0.8705 -0.3374 -vn -0.1808 -0.9204 -0.3466 -vn 0.0019 0.4239 -0.9057 -vn 0.1834 0.9141 -0.3617 -vn 0.0855 0.4042 -0.9106 -vn 0.3568 0.8579 -0.3697 -vn 0.1603 0.3713 -0.9145 -vn 0.5154 0.7696 -0.3768 -vn 0.2262 0.3258 -0.9179 -vn 0.6376 0.6670 -0.3855 -vn 0.2709 0.2729 -0.9231 -vn 0.4291 0.1272 -0.8942 -vn -0.4654 0.0933 -0.8801 -vn -0.4519 0.0451 -0.8909 -vn -0.9338 0.1863 -0.3053 -vn -0.4355 0.1814 -0.8817 -vn -0.8783 0.3650 -0.3087 -vn -0.3876 0.2605 -0.8843 -vn -0.7886 0.5287 -0.3139 -vn -0.3244 0.3268 -0.8876 -vn -0.6684 0.6710 -0.3207 -vn -0.2497 0.3776 -0.8916 -vn -0.5229 0.7864 -0.3288 -vn -0.1673 0.4113 -0.8960 -vn -0.3582 0.8704 -0.3376 -vn -0.0813 0.4271 -0.9005 -vn -0.1809 0.9203 -0.3468 -vn 0.5075 0.0248 -0.8613 -vn 0.5065 -0.0252 -0.8618 -vn 0.5531 -0.0140 -0.8329 -vn 0.5535 0.0135 -0.8328 -vn -0.2992 -0.9505 0.0830 -vn -0.6950 -0.5662 0.4430 -vn -0.8468 -0.4595 0.2680 -vn -0.7020 -0.5538 0.4477 -vn -0.8459 0.0000 0.5332 -vn -0.6950 0.5662 0.4430 -vn -0.2992 0.9505 0.0830 -vn -0.8468 0.4595 0.2680 -vn -0.7020 0.5538 0.4477 -vn -0.6617 -0.5489 0.5107 -vn -0.9404 0.0000 0.3400 -vn -0.7897 0.0000 0.6135 -vn -0.6764 -0.5580 0.4807 -vn -0.8151 0.0000 0.5793 -vn -0.0038 1.0000 0.0057 -vn -0.0034 1.0000 0.0057 -vn -0.0041 -1.0000 0.0060 -vn -0.0043 -1.0000 0.0055 -vn -0.6549 0.5771 0.4879 -vn -0.7092 0.0000 0.7050 -vn -0.0063 0.9999 0.0138 -vn -0.0168 -0.9995 0.0282 -vn -0.5817 -0.5729 0.5773 -vn -0.1439 -0.9837 0.1074 -vn -0.0034 -1.0000 0.0057 -vn -0.0033 -1.0000 0.0049 -vn -0.0033 1.0000 0.0049 -vn -0.0063 -0.9999 0.0138 -vn -0.0196 -0.9995 0.0244 -vn 0.3367 -0.4792 -0.8105 -vn -0.3959 0.0000 -0.9183 -vn -0.1457 -0.9158 -0.3741 -vn -0.8416 0.0000 0.5401 -vn -0.6764 0.5580 0.4807 -vn -0.7523 0.6009 0.2700 -vn -0.1581 0.9793 0.1259 -vn -0.6617 0.5489 0.5107 -vn -0.5256 -0.5915 0.6114 -vn -0.1457 0.9158 -0.3741 -vn -0.7523 -0.6009 0.2700 -vn -0.5119 0.8588 -0.0220 -vn -0.0135 0.9998 -0.0152 -vn -0.2813 0.9415 -0.1855 -vn -0.7659 0.4404 -0.4683 -vn -0.2813 -0.9415 -0.1855 -vn -0.7659 -0.4404 -0.4683 -vn -0.0912 0.9391 -0.3313 -vn -0.1547 -0.9832 0.0968 -vn -0.2730 -0.9333 -0.2329 -vn 0.9191 0.2867 -0.2704 -vn 0.2565 0.2261 -0.9397 -vn 0.1888 0.1374 -0.9724 -vn -0.0381 -0.7275 -0.6850 -vn 0.1438 -0.9492 -0.2797 -vn -0.0502 -0.9587 -0.2797 -vn -0.5079 0.8179 -0.2704 -vn -0.1811 0.1985 -0.9632 -vn -0.1414 0.2383 -0.9608 -vn -0.6644 -0.6967 -0.2704 -vn -0.1420 -0.2380 -0.9608 -vn -0.0883 0.2743 -0.9576 -vn -0.5106 -0.8162 -0.2704 -vn -0.0943 -0.2705 -0.9581 -vn 0.9576 -0.0990 -0.2704 -vn 0.1444 0.0270 -0.9891 -vn 0.1446 -0.0263 -0.9891 -vn -0.0388 0.2968 -0.9541 -vn -0.3328 0.9034 -0.2704 -vn -0.3359 -0.9022 -0.2704 -vn -0.0336 -0.2961 -0.9546 -vn 0.0504 0.9614 -0.2704 -vn 0.0215 0.3085 -0.9510 -vn -0.1474 -0.9514 -0.2704 -vn 0.0208 -0.3085 -0.9510 -vn 0.0847 0.3072 -0.9478 -vn -0.4528 0.7909 -0.4115 -vn 0.7294 -0.6283 -0.2704 -vn 0.2565 -0.2265 -0.9396 -vn 0.2649 -0.2181 -0.9392 -vn 0.0471 -0.9616 -0.2704 -vn 0.0839 -0.3074 -0.9478 -vn 0.8410 -0.4686 -0.2704 -vn 0.1890 -0.1374 -0.9723 -vn 0.4254 0.8636 -0.2704 -vn 0.1477 0.2921 -0.9449 -vn 0.2397 -0.9324 -0.2704 -vn 0.1469 -0.2924 -0.9449 -vn 0.9181 -0.2897 -0.2704 -vn 0.2072 0.2629 -0.9423 -vn 0.4225 -0.8650 -0.2704 -vn 0.2064 -0.2636 -0.9423 -vn 0.7315 0.6259 -0.2704 -vn 0.2656 0.2173 -0.9392 -vn 0.5880 -0.7623 -0.2704 -vn 0.9580 0.0958 -0.2704 -vn -0.9567 0.0989 -0.2738 -vn -0.2522 0.0003 -0.9677 -vn -0.3071 0.0317 -0.9511 -vn -0.3798 -0.5684 -0.7298 -vn -0.4834 -0.4834 -0.7298 -vn -0.7071 -0.7071 0.0000 -vn -0.5684 -0.3798 -0.7298 -vn -0.8314 -0.5556 0.0000 -vn -0.6316 -0.2616 -0.7298 -vn -0.9239 -0.3827 0.0000 -vn -0.4790 -0.6459 -0.5944 -vn -0.6800 -0.7152 -0.1614 -vn 0.4758 -0.4991 -0.7242 -vn 0.6900 -0.7238 0.0000 -vn -0.5922 0.3289 -0.7356 -vn -0.9048 0.4257 0.0081 -vn -0.5249 -0.5971 0.6066 -vn -0.1135 -0.9848 0.1315 -vn -0.0008 1.0000 0.0057 -vn -0.0009 1.0000 0.0068 -vn -0.0009 -1.0000 0.0068 -vn -0.0035 -0.9999 0.0081 -vn -0.0044 0.9999 0.0078 -vn -0.1135 0.9848 0.1315 -vn -0.2311 0.0000 -0.9729 -vn -0.2010 -0.4363 -0.8771 -vn -0.0044 -0.9999 0.0078 -vn -0.3015 0.9045 0.3015 -vn -0.8101 -0.3455 -0.4736 -vn -0.0654 -0.7103 0.7008 -vn -0.0035 0.9999 0.0081 -vn -0.6547 0.0000 0.7559 -vn -0.5249 0.5971 0.6066 -vn -0.2010 0.4363 -0.8771 -vn 0.0002 -0.9351 -0.3543 -vn -0.7892 0.5513 -0.2704 -vn -0.2121 0.1531 -0.9651 -vn -0.8853 -0.3782 -0.2704 -vn -0.2345 -0.1035 -0.9666 -vn -0.2343 0.1039 -0.9666 -vn -0.9434 -0.1922 -0.2704 -vn -0.2478 -0.0519 -0.9674 -vn -0.9427 0.1954 -0.2704 -vn -0.2476 0.0521 -0.9674 -vn -0.9570 -0.0957 -0.2738 -vn -0.3072 -0.0307 -0.9511 -vn -0.0912 -0.9391 -0.3313 -vn -0.1308 0.9843 0.1188 -vn -0.2386 -0.9682 0.0748 -vn 0.0704 -0.9535 -0.2931 -vn -0.1249 0.9849 0.1201 -vn -0.1237 -0.9841 0.1272 -vn -0.1308 -0.9843 0.1188 -vn -0.1316 -0.9836 0.1235 -vn -0.0041 1.0000 0.0060 -vn -0.1316 0.9836 0.1235 -vn -0.1249 -0.9849 0.1201 -vn -0.1263 -0.9857 0.1115 -vn -0.0186 -0.9994 0.0291 -vn 0.0704 0.9535 -0.2931 -vn -0.2386 0.9682 0.0748 -vn -0.0186 0.9994 0.0291 -vn -0.1263 0.9857 0.1115 -vn -0.1439 0.9837 0.1074 -vn -0.6341 -0.4651 -0.6177 -vn 0.3650 0.0000 -0.9310 -vn -0.0198 0.9994 0.0268 -vn -0.6164 -0.5818 0.5307 -vn -0.7547 0.0000 0.6560 -vn -0.6188 -0.5701 0.5403 -vn -0.7959 -0.5029 0.3369 -vn -0.7103 0.0000 -0.7039 -vn -0.6341 0.4651 -0.6177 -vn -0.1710 0.9575 -0.2324 -vn -0.6164 0.5818 0.5307 -vn -0.6188 0.5701 0.5403 -vn -0.6064 0.5710 0.5534 -vn -0.7959 0.5029 0.3369 -vn -0.6064 -0.5710 0.5534 -vn -0.9260 0.0000 0.3775 -vn -0.6379 0.5958 0.4880 -vn -0.1192 0.9844 0.1289 -vn -0.6197 0.5780 0.5309 -vn -0.6379 -0.5958 0.4880 -vn -0.7653 0.0000 0.6437 -vn -0.6197 -0.5780 0.5309 -vn -0.6252 -0.5796 0.5225 -vn -0.6252 0.5796 0.5225 -vn -0.7625 0.0000 0.6469 -vn -0.7725 0.0000 0.6350 -vn -0.6549 -0.5771 0.4879 -vn 0.3367 0.4792 -0.8105 -vn -0.0168 0.9995 0.0282 -vn -0.8022 0.0000 0.5970 -vn 0.1267 -0.4926 -0.8609 -vn 0.0249 -0.5080 -0.8610 -vn 0.5059 -0.0523 -0.8610 -vn 0.5061 0.0506 -0.8610 -vn 0.4856 0.1515 -0.8610 -vn 0.4851 -0.1531 -0.8610 -vn 0.4443 -0.2476 -0.8610 -vn 0.8426 0.4658 -0.2704 -vn 0.4452 0.2461 -0.8609 -vn -0.0762 0.5029 -0.8609 -vn 0.0266 0.5080 -0.8610 -vn -0.1758 0.4773 -0.8609 -vn -0.2683 0.4321 -0.8609 -vn -0.3498 0.3693 -0.8610 -vn -0.4170 0.2913 -0.8609 -vn -0.6621 0.6989 -0.2704 -vn -0.4981 0.1032 -0.8610 -vn -0.8841 0.3811 -0.2704 -vn -0.4671 0.2014 -0.8610 -vn -0.4839 0.0500 -0.8737 -vn 0.3865 0.3307 -0.8609 -vn 0.5906 0.7603 -0.2704 -vn 0.3120 0.4017 -0.8609 -vn 0.2248 0.4563 -0.8609 -vn 0.2429 0.9316 -0.2704 -vn 0.1283 0.4922 -0.8610 -vn -0.0779 -0.5026 -0.8610 -vn -0.1774 -0.4767 -0.8610 -vn -0.2698 -0.4312 -0.8610 -vn -0.3511 -0.3681 -0.8610 -vn -0.4180 -0.2899 -0.8610 -vn -0.4678 -0.1998 -0.8610 -vn -0.4984 -0.1015 -0.8610 -vn -0.5087 0.0009 -0.8609 -vn -0.4840 -0.0484 -0.8737 -vn 0.3854 -0.3319 -0.8610 -vn 0.3106 -0.4028 -0.8610 -vn 0.2232 -0.4570 -0.8610 -vn -0.6376 -0.3525 -0.6850 -vn -0.7249 -0.0725 -0.6850 -vn 0.7036 0.0703 -0.7071 -vn 0.3864 0.6176 -0.6850 -vn 0.3349 0.8997 -0.2797 -vn 0.5092 0.8139 -0.2797 -vn 0.1091 -0.7203 -0.6850 -vn 0.3319 -0.9008 -0.2797 -vn 0.5028 0.5272 -0.6850 -vn 0.6626 0.6947 -0.2797 -vn 0.2518 -0.6836 -0.6850 -vn 0.5065 -0.8156 -0.2797 -vn 0.5986 0.4152 -0.6850 -vn 0.7889 0.5471 -0.2797 -vn 0.5010 -0.5289 -0.6850 -vn 0.6603 -0.6970 -0.2797 -vn 0.5972 -0.4172 -0.6850 -vn 0.8816 -0.3801 -0.2797 -vn 0.7870 -0.5498 -0.2797 -vn 0.6699 0.2861 -0.6850 -vn 0.8829 0.3771 -0.2797 -vn 0.6690 -0.2884 -0.6850 -vn 0.9401 -0.1948 -0.2797 -vn 0.7138 0.1454 -0.6850 -vn 0.9407 0.1917 -0.2797 -vn 0.7033 -0.0727 -0.7071 -vn 0.9601 -0.0016 -0.2797 -vn 0.9567 -0.0989 -0.2738 -vn 0.9570 0.0957 -0.2738 -vn -0.7295 -0.6241 -0.2797 -vn -0.8402 -0.4645 -0.2797 -vn -0.0356 0.7276 -0.6850 -vn -0.2391 0.9298 -0.2797 -vn -0.0470 0.9589 -0.2797 -vn -0.5520 0.4754 -0.6850 -vn -0.8386 0.4673 -0.2797 -vn -0.7274 0.6266 -0.2797 -vn -0.4469 -0.5753 -0.6850 -vn -0.5889 -0.7582 -0.2797 -vn -0.7246 0.0749 -0.6850 -vn -0.9553 -0.0955 -0.2797 -vn -0.9550 0.0987 -0.2797 -vn -0.4450 0.5768 -0.6850 -vn -0.5864 0.7602 -0.2797 -vn -0.4242 -0.8612 -0.2797 -vn -0.9165 -0.2859 -0.2797 -vn -0.3197 0.6546 -0.6850 -vn -0.4213 0.8627 -0.2797 -vn -0.3219 -0.6535 -0.6850 -vn -0.2422 -0.9290 -0.2797 -vn -0.9156 0.2889 -0.2797 -vn -0.1838 -0.7049 -0.6850 -vn -0.6364 0.3546 -0.6850 -vn 0.1115 0.7199 -0.6850 -vn 0.1469 0.9487 -0.2797 -vn -0.6954 -0.2169 -0.6850 -vn 0.2541 0.6827 -0.6850 -vn -0.2022 0.4140 -0.8875 -vn -0.1147 0.4462 -0.8875 -vn -0.2814 0.3648 -0.8875 -vn -0.3491 0.3007 -0.8875 -vn -0.4025 0.2243 -0.8875 -vn 0.4840 0.0484 -0.8737 -vn 0.4607 -0.0008 -0.8875 -vn 0.4237 0.1810 -0.8875 -vn 0.4515 0.0920 -0.8875 -vn 0.3786 0.2626 -0.8875 -vn 0.4231 -0.1824 -0.8875 -vn 0.3777 -0.2638 -0.8875 -vn 0.3180 0.3334 -0.8875 -vn 0.2444 0.3906 -0.8875 -vn 0.1607 0.4318 -0.8875 -vn 0.0705 0.4553 -0.8875 -vn -0.0226 0.4602 -0.8875 -vn -0.0241 -0.4601 -0.8875 -vn -0.1162 -0.4458 -0.8875 -vn -0.2036 -0.4133 -0.8875 -vn -0.2826 -0.3639 -0.8875 -vn -0.3501 -0.2995 -0.8875 -vn -0.4032 -0.2229 -0.8875 -vn 0.4838 -0.0500 -0.8737 -vn 0.4512 -0.0935 -0.8875 -vn 0.3169 -0.3345 -0.8875 -vn 0.2430 -0.3914 -0.8875 -vn 0.1593 -0.4323 -0.8875 -vn 0.0690 -0.4555 -0.8875 -vn -0.4399 -0.1372 -0.8875 -vn -0.4394 0.1387 -0.8875 -vn -0.4583 0.0474 -0.8875 -vn -0.4585 -0.0458 -0.8875 -vn -0.6548 0.0000 0.7558 -vn -0.5244 0.5982 0.6059 -vn -0.0031 0.9999 0.0075 -vn -0.0038 0.9999 0.0072 -vn -0.0476 0.6369 0.7695 -vn -0.0923 -0.7210 0.6867 -vn -0.0006 -1.0000 0.0059 -vn -0.0005 -1.0000 0.0062 -vn 0.4908 0.8264 -0.2759 -vn -0.0038 -0.9999 0.0072 -vn -0.1133 -0.9848 0.1313 -vn -0.0006 1.0000 0.0059 -vn -0.1133 0.9848 0.1313 -vn -0.0031 -0.9999 0.0075 -vn -0.0005 1.0000 0.0062 -vn -0.5244 -0.5982 0.6059 -vn -0.7345 0.0512 0.6766 -vn -0.7533 0.5799 0.3102 -vn -0.2157 0.3867 0.8966 -vn -0.9290 -0.2108 -0.3041 -vn -0.6625 0.3265 -0.6741 -vn 0.7783 0.2630 0.5701 -vn -0.9802 -0.1268 0.1521 -vn 0.4385 -0.4812 -0.7590 -vn -0.1603 -0.6953 -0.7006 -vn -0.0606 0.7457 -0.6635 -vn 0.0476 0.6368 0.7695 -vn -0.2296 0.9292 0.2897 -vn 0.4271 0.8959 0.1220 -vn 0.3377 0.4676 0.8168 -vn -0.5041 -0.5885 0.6321 -vn -0.9240 -0.2203 0.3124 -vn -0.1132 -0.9849 0.1312 -vn -0.0007 1.0000 0.0058 -vn -0.0007 -1.0000 0.0058 -vn -0.0005 1.0000 0.0061 -vn -0.0030 -0.9999 0.0073 -vn -0.0005 -1.0000 0.0061 -vn -0.1132 0.9849 0.1312 -vn -0.0037 0.9999 0.0070 -vn -0.0037 -0.9999 0.0070 -vn -0.0923 -0.7209 0.6868 -vn -0.0030 0.9999 0.0073 -vn -0.5041 0.5885 0.6321 -vn -0.8650 0.0000 0.5017 -vn -0.9240 0.2203 0.3124 -vn -0.6229 0.0000 0.7823 -vn 0.7133 -0.1478 -0.6850 -vn -0.1237 0.9841 0.1272 -vn -0.8513 0.0000 -0.5246 -vn -0.9551 0.0000 0.2963 -vn 0.7285 -0.0012 -0.6850 -vn -0.7994 0.0000 0.6008 -vn -0.1192 -0.9844 0.1289 -vn -0.1710 -0.9575 -0.2324 -vn -0.9527 -0.0001 -0.3039 -vn -0.9627 0.0016 -0.2704 -vn -0.9878 -0.1199 0.0995 -vn -0.3343 0.9136 0.2315 -vn -0.3478 -0.9375 0.0099 -vn -0.3333 0.8750 0.3510 -vn -0.5512 0.8342 0.0136 -vn -0.3908 0.8696 -0.3018 -vn -0.2226 0.9648 -0.1397 -vn -0.4162 0.7524 -0.5105 -vn -0.0001 -0.7158 0.6982 -vn -0.1071 -0.7247 0.6806 -vn -0.4825 -0.6439 -0.5938 -vn -0.0002 -0.7156 0.6984 -vn -0.0822 -0.7312 0.6771 -vn -0.0001 -0.7160 0.6980 -vn -0.0002 -0.7153 0.6988 -vn -0.1072 -0.7246 0.6808 -vn -0.5048 -0.6537 0.5637 -vn -0.0477 -0.7005 0.7120 -vn -0.0003 -0.7124 0.7017 -vn -0.6003 -0.7997 0.0003 -vn -0.0003 -0.7129 0.7013 -vn -0.0003 -0.7134 0.7007 -vn -0.0003 -0.7140 0.7002 -vn -0.0003 -0.7144 0.6997 -vn -0.0003 -0.7149 0.6992 -vn -0.6157 0.7771 -0.1303 -vn -0.6435 0.7653 0.0118 -vn -0.5410 0.7705 -0.3370 -vn -0.5647 0.8027 0.1918 -vn -0.6427 0.7620 0.0785 -vn -0.5115 0.8593 0.0042 -vn -0.5565 0.8308 0.0061 -vn -0.5081 0.8613 0.0016 -vn -0.1975 0.9803 -0.0037 -vn -0.3700 0.9290 -0.0010 -vn -0.2098 0.9777 -0.0013 -vn -0.3991 0.9169 0.0013 -vn -0.3179 0.9450 0.0770 -vn -0.4736 0.8802 0.0305 -vn -0.5655 0.8247 -0.0016 -vn -0.5882 0.8086 0.0044 -vn -0.5366 0.8438 0.0086 -vn -0.4648 0.8854 -0.0038 -vn -0.3747 0.9243 -0.0728 -vn -0.4848 0.8613 -0.1518 -vn -0.5178 0.8554 0.0093 -vn -0.5764 0.8168 0.0241 -vn -0.5477 0.8322 0.0860 -vn -0.4875 0.8586 0.1583 -vn -0.4915 0.8274 0.2715 -vn -0.2310 0.7371 -0.6350 -vn -0.6474 0.7621 0.0031 -vn 0.4521 0.0450 -0.8908 -vn 0.4201 0.0856 -0.9034 -vn 0.4519 -0.0462 -0.8908 -vn 0.4301 -0.0003 -0.9028 -vn -0.5176 -0.0478 -0.8543 -vn -0.4268 -0.1081 -0.8979 -vn -0.5173 0.0488 -0.8544 -vn -0.4262 0.1087 -0.8980 -vn -0.2908 0.1434 -0.9460 -vn -0.2914 -0.1432 -0.9458 -vn -0.0141 -0.3830 -0.9236 -vn 0.0636 -0.3866 -0.9200 -vn 0.1433 -0.3723 -0.9170 -vn 0.2167 -0.3432 -0.9139 -vn 0.2862 -0.2987 -0.9104 -vn 0.3455 -0.2392 -0.9074 -vn 0.3910 -0.1673 -0.9050 -vn 0.4198 -0.0863 -0.9035 -vn -0.2626 -0.2421 -0.9340 -vn -0.2143 -0.2905 -0.9326 -vn -0.1553 -0.3331 -0.9300 -vn -0.0879 -0.3646 -0.9270 -vn -0.0134 0.3829 -0.9237 -vn 0.0658 0.3847 -0.9207 -vn 0.1417 0.3714 -0.9176 -vn 0.2174 0.3429 -0.9138 -vn 0.2868 0.2983 -0.9103 -vn 0.3460 0.2387 -0.9073 -vn 0.3914 0.1666 -0.9050 -vn -0.2620 0.2425 -0.9341 -vn -0.2136 0.2908 -0.9326 -vn -0.1546 0.3333 -0.9300 -vn -0.0872 0.3647 -0.9270 -vn -0.4369 -0.8325 0.3407 -vn -0.3403 -0.8972 0.2813 -vn -0.3334 -0.8791 0.3407 -vn -0.1157 -0.9526 0.2813 -vn -0.1133 -0.9333 0.3407 -vn 0.9659 -0.1173 0.2306 -vn -0.9579 -0.0579 0.2811 -vn -0.9333 -0.1133 0.3407 -vn -0.9385 -0.0568 0.3405 -vn -0.9128 -0.2250 0.3407 -vn -0.8972 -0.3403 0.2813 -vn -0.8791 -0.3334 0.3407 -vn -0.9718 -0.0588 0.2282 -vn -0.9448 0.2329 0.2306 -vn -0.8867 0.2185 0.4073 -vn 0.8008 -0.5528 0.2306 -vn -0.5541 -0.8027 0.2205 -vn -0.5571 -0.8071 0.1953 -vn -0.5452 0.7897 0.2813 -vn -0.6234 0.7037 0.3407 -vn -0.5341 0.7737 0.3407 -vn -0.3458 0.9120 0.2205 -vn -0.4244 0.8086 0.4074 -vn -0.4522 -0.8616 0.2306 -vn -0.4244 -0.8086 0.4074 -vn 0.7283 -0.6452 0.2306 -vn -0.9754 0.0000 0.2205 -vn -0.9790 0.0592 0.1949 -vn 0.0000 -0.9132 0.4074 -vn -0.1173 -0.9659 0.2306 -vn -0.1101 -0.9066 0.4074 -vn -0.9470 0.2334 0.2205 -vn -0.9522 0.2347 0.1953 -vn 0.5528 0.8007 0.2306 -vn 0.7284 0.6452 0.2306 -vn -0.8539 0.3238 0.4074 -vn -0.1172 0.9659 0.2306 -vn -0.3458 -0.9120 0.2205 -vn -0.3478 -0.9170 0.1953 -vn -0.5527 -0.8008 0.2306 -vn -0.5188 -0.7516 0.4073 -vn -0.2296 -0.9317 0.2813 -vn -0.2250 -0.9128 0.3407 -vn -0.8616 -0.4522 0.2306 -vn -0.7183 0.6363 0.2813 -vn -0.7037 0.6234 0.3407 -vn -0.7737 0.5341 0.3407 -vn -0.8497 0.4459 0.2813 -vn -0.8325 0.4369 0.3407 -vn -0.8972 0.3403 0.2813 -vn -0.8791 0.3334 0.3407 -vn -0.9128 0.2250 0.3407 -vn -0.9526 0.1156 0.2813 -vn -0.9333 0.1133 0.3407 -vn -0.9579 0.0579 0.2811 -vn -0.9402 0.0000 0.3407 -vn -0.9385 0.0568 0.3405 -vn -0.9470 -0.2334 0.2205 -vn -0.2328 -0.9448 0.2306 -vn -0.1157 0.9526 0.2813 -vn -0.2250 0.9128 0.3407 -vn -0.1133 0.9333 0.3407 -vn -0.9526 -0.1157 0.2813 -vn -0.3403 0.8972 0.2813 -vn -0.3334 0.8791 0.3407 -vn -0.4369 0.8325 0.3407 -vn -0.5541 0.8027 0.2205 -vn 0.1173 -0.9659 0.2306 -vn 0.0000 -0.9730 0.2306 -vn -0.6363 -0.7183 0.2813 -vn -0.5340 -0.7737 0.3407 -vn -0.6234 -0.7037 0.3407 -vn 0.2328 0.9448 0.2306 -vn -0.9683 0.1176 0.2205 -vn -0.7037 -0.6234 0.3407 -vn -0.7737 -0.5341 0.3407 -vn -0.7183 -0.6363 0.2813 -vn -0.8497 -0.4460 0.2813 -vn -0.8325 -0.4369 0.3407 -vn -0.9790 -0.0592 0.1949 -vn -0.1182 -0.9736 0.1953 -vn -0.2334 -0.9470 0.2205 -vn -0.6503 0.7341 0.1953 -vn -0.6468 0.7301 0.2205 -vn -0.8027 0.5541 0.2205 -vn -0.8684 0.4558 0.1953 -vn -0.8636 0.4533 0.2205 -vn -0.9120 0.3459 0.2205 -vn -0.1176 0.9683 0.2205 -vn -0.2334 0.9470 0.2205 -vn -0.2347 0.9522 0.1953 -vn -0.9683 -0.1176 0.2205 -vn -0.6056 -0.6836 0.4074 -vn -0.6452 -0.7284 0.2306 -vn -0.4460 -0.8497 0.2813 -vn -0.6468 -0.7301 0.2205 -vn -0.7341 -0.6503 0.1953 -vn -0.6056 0.6836 0.4074 -vn -0.7284 0.6452 0.2306 -vn -0.8027 -0.5541 0.2205 -vn -0.8684 -0.4558 0.1953 -vn -0.8636 -0.4533 0.2205 -vn -0.6836 0.6056 0.4074 -vn -0.7283 -0.6452 0.2306 -vn 0.8616 -0.4522 0.2306 -vn -0.4533 -0.8636 0.2205 -vn -0.6363 0.7183 0.2813 -vn -0.7301 0.6468 0.2205 -vn -0.7898 0.5451 0.2813 -vn -0.9317 0.2296 0.2813 -vn -0.9596 0.0000 0.2813 -vn -0.9736 0.0589 0.2204 -vn 0.0000 0.9754 0.2205 -vn -0.2296 0.9317 0.2813 -vn -0.9736 -0.0589 0.2204 -vn -0.4459 0.8497 0.2813 -vn -0.4533 0.8636 0.2205 -vn -0.5451 -0.7897 0.2813 -vn -0.7301 -0.6468 0.2205 -vn -0.7898 -0.5451 0.2813 -vn -0.9120 -0.3459 0.2205 -vn -0.9317 -0.2297 0.2813 -vn -0.1176 -0.9683 0.2205 -vn 0.9642 0.2376 0.1179 -vn -0.1066 -0.8767 0.4691 -vn 0.0000 -0.9228 0.3852 -vn 0.0000 -0.8831 0.4691 -vn -0.7433 0.6585 0.1178 -vn -0.9930 0.0000 0.1179 -vn 0.8793 0.4614 0.1178 -vn 0.2376 -0.9641 0.1179 -vn 0.6585 0.7433 0.1179 -vn 0.7432 0.6585 0.1179 -vn 0.5641 -0.8173 0.1179 -vn 0.8793 -0.4615 0.1179 -vn -0.2376 -0.9641 0.1179 -vn -0.5641 0.8172 0.1178 -vn -0.4615 0.8792 0.1178 -vn 0.5641 0.8172 0.1178 -vn -0.2376 0.9642 0.1179 -vn 0.9858 0.1197 0.1179 -vn -0.5641 -0.8172 0.1179 -vn -0.6585 -0.7433 0.1179 -vn -0.4615 -0.8793 0.1179 -vn 0.0000 0.9930 0.1179 -vn -0.7433 -0.6584 0.1178 -vn 0.4615 0.8792 0.1179 -vn 0.9285 0.3521 0.1179 -vn -0.1197 -0.9858 0.1179 -vn -0.9858 -0.1197 0.1179 -vn 0.1197 -0.9858 0.1179 -vn -0.9285 -0.3521 0.1179 -vn 0.1197 0.9858 0.1179 -vn 0.6585 -0.7433 0.1179 -vn 0.8173 0.5640 0.1178 -vn -0.3521 0.9285 0.1179 -vn 0.3521 -0.9285 0.1179 -vn 0.2376 0.9642 0.1179 -vn -0.9911 -0.0599 0.1182 -vn -0.9911 0.0599 0.1182 -vn -0.9642 0.2376 0.1179 -vn -0.8173 0.5640 0.1178 -vn -0.9858 0.1197 0.1179 -vn -0.6585 0.7433 0.1179 -vn 0.0000 -0.9930 0.1179 -vn -0.3521 -0.9285 0.1179 -vn 0.9642 -0.2376 0.1179 -vn 0.9285 -0.3521 0.1179 -vn 0.4615 -0.8793 0.1179 -vn 0.9911 0.0599 0.1182 -vn -0.8793 0.4614 0.1178 -vn -0.8173 -0.5640 0.1178 -vn 0.9911 -0.0599 0.1182 -vn -0.8793 -0.4614 0.1178 -vn 0.7433 -0.6584 0.1178 -vn 0.8173 -0.5641 0.1179 -vn -0.1197 0.9858 0.1179 -vn -0.9285 0.3521 0.1178 -vn 0.3521 0.9285 0.1179 -vn 0.9858 -0.1197 0.1179 -vn 0.9930 0.0000 0.1179 -vn -0.9642 -0.2376 0.1178 -vn 0.3804 -0.0937 0.9201 -vn 0.0470 0.3888 0.9201 -vn -0.3787 -0.0229 0.9252 -vn 0.5016 -0.7268 0.4691 -vn 0.6119 -0.6908 0.3852 -vn 0.5856 -0.6611 0.4691 -vn -0.7820 -0.4104 0.4691 -vn -0.8628 -0.3274 0.3851 -vn -0.8172 -0.4287 0.3852 -vn -0.0960 -0.7902 0.6052 -vn -0.0001 -0.3916 0.9201 -vn -0.0467 -0.3888 0.9201 -vn -0.8767 -0.1063 0.4690 -vn -0.8959 -0.2210 0.3852 -vn -0.8575 -0.2113 0.4690 -vn -0.7902 -0.0960 0.6053 -vn -0.3926 -0.0932 0.9149 -vn -0.3887 -0.0472 0.9201 -vn -0.8832 0.0000 0.4690 -vn -0.9210 0.0557 0.3856 -vn -0.9228 0.0000 0.3852 -vn -0.7441 -0.2825 0.6054 -vn -0.3467 -0.1820 0.9201 -vn -0.3665 -0.1389 0.9200 -vn -0.3132 0.8257 0.4691 -vn -0.4288 0.8171 0.3852 -vn -0.4104 0.7820 0.4691 -vn -0.3696 0.7049 0.6053 -vn -0.1388 0.3662 0.9201 -vn -0.2819 0.7444 0.6052 -vn -0.0001 0.8831 0.4691 -vn 0.1112 0.9161 0.3852 -vn 0.0000 0.9228 0.3852 -vn -0.7931 0.0479 0.6071 -vn -0.3917 0.0000 0.9201 -vn -0.3736 0.0229 0.9273 -vn 0.5017 0.7268 0.4690 -vn 0.4288 0.8171 0.3852 -vn 0.4105 0.7819 0.4691 -vn -0.8576 0.2112 0.4689 -vn -0.8628 0.3272 0.3852 -vn -0.8960 0.2207 0.3852 -vn -0.7931 -0.0480 0.6072 -vn -0.6610 0.5857 0.4691 -vn -0.7594 0.5243 0.3852 -vn -0.7268 0.5017 0.4690 -vn -0.8502 0.4463 0.2792 -vn -0.3132 -0.8257 0.4690 -vn -0.2208 -0.8960 0.3852 -vn -0.2115 -0.8574 0.4690 -vn -0.7440 0.2825 0.6054 -vn -0.3825 0.0936 0.9192 -vn -0.3534 0.1396 0.9250 -vn -0.4286 -0.8172 0.3852 -vn -0.3271 -0.8629 0.3851 -vn -0.5961 0.5277 0.6052 -vn -0.3093 0.2235 0.9243 -vn -0.2929 0.2597 0.9202 -vn 0.3133 -0.8257 0.4690 -vn 0.4287 -0.8172 0.3852 -vn 0.4104 -0.7820 0.4691 -vn -0.6367 0.7187 0.2792 -vn -0.5455 0.7902 0.2792 -vn -0.7187 -0.6368 0.2792 -vn -0.7902 -0.5455 0.2792 -vn -0.2827 -0.7441 0.6053 -vn -0.1748 -0.3472 0.9213 -vn -0.3706 -0.7047 0.6050 -vn 0.8767 -0.1064 0.4690 -vn 0.9210 -0.0557 0.3856 -vn 0.8817 -0.0533 0.4688 -vn 0.2300 -0.9323 0.2792 -vn 0.1158 -0.9532 0.2792 -vn 0.8258 -0.3131 0.4690 -vn 0.8960 -0.2209 0.3852 -vn 0.8575 -0.2113 0.4690 -vn -0.0005 0.7960 0.6053 -vn 0.0962 0.7902 0.6053 -vn 0.7903 -0.5455 0.2791 -vn 0.7187 -0.6367 0.2792 -vn 0.0934 0.3803 0.9201 -vn 0.1908 0.7728 0.6052 -vn -0.2297 0.9323 0.2792 -vn -0.1158 0.9532 0.2792 -vn 0.7443 -0.2822 0.6053 -vn 0.3788 -0.1382 0.9151 -vn 0.3405 0.8978 0.2791 -vn 0.7049 0.3696 0.6053 -vn 0.3666 0.1388 0.9199 -vn 0.7445 0.2820 0.6052 -vn 0.7931 -0.0479 0.6072 -vn 0.3887 -0.0472 0.9201 -vn 0.7902 -0.0959 0.6053 -vn 0.7729 0.1902 0.6053 -vn 0.3638 0.0478 0.9302 -vn 0.7902 0.0962 0.6052 -vn 0.9603 0.0000 0.2791 -vn 0.9532 -0.1158 0.2791 -vn 0.9323 -0.2298 0.2791 -vn 0.6547 0.4524 0.6054 -vn 0.2929 0.2597 0.9202 -vn 0.3091 0.2235 0.9244 -vn 0.4521 -0.6551 0.6053 -vn 0.2734 -0.2920 0.9165 -vn 0.2227 -0.3222 0.9201 -vn 0.5276 0.5960 0.6053 -vn 0.2227 0.3223 0.9200 -vn 0.2596 0.2931 0.9201 -vn 0.9323 0.2298 0.2792 -vn 0.9532 0.1157 0.2792 -vn -0.5016 -0.7268 0.4691 -vn -0.6121 -0.6906 0.3852 -vn -0.5242 -0.7595 0.3852 -vn -0.4518 -0.6552 0.6054 -vn -0.2226 -0.3222 0.9201 -vn 0.8978 0.3405 0.2791 -vn 0.7049 -0.3698 0.6052 -vn 0.3437 -0.1822 0.9212 -vn 0.7931 0.0485 0.6072 -vn 0.3916 0.0000 0.9201 -vn 0.7960 0.0000 0.6052 -vn 0.7187 0.6367 0.2791 -vn 0.7902 0.5455 0.2792 -vn 0.3699 0.7048 0.6053 -vn 0.4517 0.6554 0.6053 -vn -0.1897 -0.7731 0.6053 -vn -0.0890 -0.3804 0.9205 -vn 0.5455 0.7902 0.2792 -vn 0.6368 0.7187 0.2792 -vn -0.1907 0.7728 0.6053 -vn -0.0934 0.3803 0.9201 -vn -0.2665 -0.2926 0.9183 -vn -0.5281 -0.5957 0.6052 -vn -0.3763 0.0474 0.9253 -vn -0.7904 0.0956 0.6051 -vn 0.3701 -0.7047 0.6053 -vn 0.1388 -0.3662 0.9201 -vn 0.2820 -0.7443 0.6053 -vn -0.4105 -0.7819 0.4691 -vn 0.4462 0.8502 0.2792 -vn -0.0001 0.9602 0.2791 -vn 0.6119 0.6908 0.3852 -vn 0.5241 0.7595 0.3852 -vn -0.9323 -0.2298 0.2792 -vn -0.9323 0.2298 0.2792 -vn 0.6611 0.5856 0.4690 -vn 0.7595 0.5241 0.3852 -vn 0.6906 0.6121 0.3852 -vn -0.6609 -0.5857 0.4691 -vn -0.5855 -0.6611 0.4692 -vn 0.9585 0.0578 0.2792 -vn 0.7820 0.4104 0.4691 -vn 0.8628 0.3274 0.3853 -vn 0.8172 0.4288 0.3851 -vn 0.9585 -0.0580 0.2792 -vn 0.8767 0.1066 0.4691 -vn 0.8960 0.2208 0.3852 -vn 0.8575 0.2112 0.4691 -vn -0.8502 -0.4463 0.2792 -vn 0.8503 0.4462 0.2792 -vn 0.2115 -0.8574 0.4690 -vn 0.3271 -0.8629 0.3852 -vn 0.8832 0.0000 0.4690 -vn 0.9210 0.0558 0.3855 -vn 0.8817 0.0536 0.4688 -vn 0.7269 -0.5016 0.4690 -vn 0.8171 -0.4289 0.3852 -vn 0.7821 -0.4104 0.4690 -vn 0.9161 -0.1112 0.3852 -vn 0.3133 0.8257 0.4690 -vn 0.2210 0.8960 0.3851 -vn 0.2114 0.8574 0.4691 -vn 0.3223 -0.2224 0.9201 -vn 0.6551 -0.4522 0.6053 -vn -0.1065 0.8767 0.4690 -vn -0.2207 0.8960 0.3852 -vn -0.2112 0.8575 0.4691 -vn 0.8628 -0.3273 0.3853 -vn 0.6611 -0.5856 0.4690 -vn 0.7594 -0.5242 0.3852 -vn 0.1393 0.3661 0.9201 -vn 0.2821 0.7442 0.6054 -vn 0.1065 0.8767 0.4691 -vn 0.1111 -0.9161 0.3852 -vn 0.2206 -0.8961 0.3851 -vn 0.0935 -0.3803 0.9201 -vn 0.1900 -0.7730 0.6052 -vn 0.5455 -0.7902 0.2792 -vn 0.4462 -0.8502 0.2791 -vn -0.7595 -0.5241 0.3852 -vn -0.6908 -0.6119 0.3851 -vn -0.5017 0.7268 0.4690 -vn -0.6119 0.6907 0.3852 -vn -0.5857 0.6610 0.4690 -vn -0.5958 -0.5280 0.6052 -vn -0.2932 -0.2597 0.9201 -vn 0.5242 -0.7595 0.3852 -vn -0.7902 0.5455 0.2792 -vn -0.2298 -0.9323 0.2792 -vn -0.3405 -0.8978 0.2792 -vn -0.8258 0.3131 0.4690 -vn -0.8171 0.4289 0.3852 -vn -0.6906 0.6120 0.3852 -vn -0.9602 0.0000 0.2791 -vn -0.3463 0.1820 0.9203 -vn -0.7046 0.3702 0.6053 -vn -0.8767 0.1064 0.4690 -vn -0.9160 0.1114 0.3853 -vn -0.4462 0.8503 0.2792 -vn -0.8817 0.0533 0.4687 -vn -0.0963 0.7902 0.6053 -vn -0.0471 0.3887 0.9201 -vn -0.3272 0.8629 0.3851 -vn -0.8257 -0.3133 0.4690 -vn -0.5279 0.5958 0.6052 -vn -0.2224 0.3223 0.9201 -vn -0.4524 0.6550 0.6052 -vn -0.9210 -0.0552 0.3856 -vn -0.8817 -0.0533 0.4688 -vn -0.9160 -0.1111 0.3853 -vn 0.6367 -0.7188 0.2791 -vn -0.1111 -0.9161 0.3852 -vn -0.6553 -0.4519 0.6053 -vn -0.3222 -0.2224 0.9202 -vn 0.5959 -0.5278 0.6052 -vn 0.2934 -0.2597 0.9200 -vn 0.3406 -0.8978 0.2791 -vn -0.9532 0.1157 0.2792 -vn -0.5455 -0.7902 0.2791 -vn -0.6367 -0.7188 0.2792 -vn -0.3404 0.8979 0.2792 -vn 0.5857 0.6610 0.4690 -vn 0.7267 0.5017 0.4691 -vn 0.8979 -0.3405 0.2791 -vn 0.8502 -0.4462 0.2791 -vn 0.8258 0.3131 0.4690 -vn 0.5955 0.5281 0.6053 -vn 0.9161 0.1112 0.3852 -vn 0.3465 0.1820 0.9202 -vn 0.3921 0.0932 0.9152 -vn 0.9228 0.0000 0.3853 -vn 0.3784 0.0229 0.9254 -vn 0.3273 0.8628 0.3851 -vn -0.1111 0.9161 0.3852 -vn 0.2299 0.9323 0.2791 -vn 0.6907 -0.6120 0.3852 -vn 0.1158 0.9532 0.2792 -vn 0.7728 -0.1905 0.6053 -vn 0.1064 -0.8767 0.4691 -vn 0.3719 -0.0230 0.9279 -vn -0.4463 -0.8502 0.2792 -vn -0.7268 -0.5017 0.4691 -vn -0.5242 0.7595 0.3852 -vn 0.1751 -0.3472 0.9213 -vn -0.7187 0.6368 0.2792 -vn -0.1430 -0.3659 0.9196 -vn -0.8978 0.3405 0.2792 -vn -0.2596 0.2931 0.9201 -vn -0.7819 0.4105 0.4690 -vn -0.6551 0.4521 0.6052 -vn -0.9532 -0.1158 0.2792 -vn -0.9585 -0.0580 0.2792 -vn -0.7729 0.1902 0.6053 -vn 0.1830 0.3466 0.9199 -vn -0.9585 0.0580 0.2792 -vn 0.0000 0.3916 0.9201 -vn -0.1822 0.3467 0.9201 -vn -0.8978 -0.3405 0.2792 -vn -0.7960 0.0000 0.6053 -vn -0.7729 -0.1904 0.6052 -vn 0.0000 -0.9602 0.2791 -vn -0.1158 -0.9532 0.2792 -vn -0.7051 -0.3697 0.6051 -vn 0.5281 -0.5957 0.6052 -vn -0.0002 -0.7960 0.6053 -vn 0.0469 -0.3888 0.9201 -vn 0.0962 -0.7901 0.6053 -vn -0.1188 -0.9789 0.1664 -vn -0.5601 0.8115 0.1664 -vn -0.3497 -0.9220 0.1664 -vn -0.1442 0.9519 -0.2704 -vn -0.7400 0.0000 0.6726 -vn -0.1814 0.7056 -0.6850 -vn -0.6947 0.2192 -0.6850 -vn -0.5536 -0.4736 -0.6850 -vn 0.3843 -0.6189 -0.6850 -usemtl None -s 1 -f 493/1/1 837/2/2 845/3/3 -f 963/4/4 428/5/5 961/6/6 -f 9/7/7 636/8/8 8/9/9 -f 332/10/10 58/11/11 57/12/12 -f 474/13/13 15/14/14 473/15/15 -f 475/16/16 17/17/17 474/13/13 -f 476/18/18 19/19/19 475/16/16 -f 477/20/20 21/21/21 476/18/18 -f 2697/22/15 23/23/22 477/20/20 -f 498/24/23 409/25/24 502/26/23 -f 479/27/25 26/28/26 478/29/27 -f 480/30/28 28/31/25 479/27/25 -f 481/32/29 30/33/28 480/30/28 -f 482/34/30 32/35/29 481/32/29 -f 483/36/31 34/37/30 482/34/30 -f 483/36/31 38/38/32 36/39/31 -f 473/15/15 38/38/32 484/40/32 -f 49/41/33 34/42/30 36/43/31 -f 2662/44/34 43/45/35 23/46/22 -f 47/47/36 30/48/28 32/49/29 -f 21/50/21 41/51/37 19/52/19 -f 45/53/38 26/54/26 28/55/25 -f 50/56/39 36/43/31 38/57/32 -f 17/58/17 39/59/40 15/60/14 -f 48/61/41 32/49/29 34/42/30 -f 23/46/22 42/62/42 21/50/21 -f 46/63/43 28/55/25 30/48/28 -f 15/60/14 50/56/39 38/57/32 -f 19/52/19 40/64/44 17/58/17 -f 499/65/15 412/66/45 411/67/46 -f 522/68/47 421/69/48 460/70/49 -f 49/41/33 355/71/50 351/72/51 -f 50/56/39 359/73/52 355/71/50 -f 39/59/40 363/74/53 359/73/52 -f 376/75/54 2664/76/55 56/77/56 -f 41/51/37 371/78/57 367/79/58 -f 515/80/59 422/81/60 520/82/61 -f 374/83/62 2685/84/15 377/85/63 -f 216/86/64 242/87/65 215/88/66 -f 217/89/67 245/90/68 216/86/64 -f 2676/91/69 248/92/70 217/89/67 -f 288/93/71 67/94/72 252/95/73 -f 218/96/74 287/97/75 251/98/76 -f 256/99/77 75/100/78 64/101/79 -f 2684/102/80 294/103/81 2681/104/82 -f 264/105/83 79/106/84 260/107/85 -f 497/108/15 442/109/86 443/110/86 -f 226/111/87 263/112/88 224/113/89 -f 309/114/90 302/115/91 306/116/92 -f 228/117/93 267/118/94 226/111/87 -f 313/119/95 306/116/92 310/120/96 -f 230/121/97 271/122/98 228/117/93 -f 317/123/99 310/120/96 314/124/100 -f 232/125/101 275/126/102 230/121/97 -f 321/127/103 314/124/100 318/128/104 -f 234/129/105 279/130/106 232/125/101 -f 325/131/107 318/128/104 322/132/108 -f 214/133/109 283/134/110 234/129/105 -f 329/135/111 322/132/108 326/136/112 -f 224/113/89 259/137/113 222/138/114 -f 215/88/66 238/139/115 213/140/116 -f 236/141/117 300/142/118 287/97/75 -f 220/143/119 328/144/120 255/145/121 -f 909/146/122 98/147/123 910/148/124 -f 912/149/125 88/150/126 89/151/127 -f 913/152/128 99/153/129 909/146/122 -f 911/154/130 87/155/131 88/150/126 -f 915/156/132 100/157/133 913/152/128 -f 914/158/134 86/159/135 87/155/131 -f 917/160/136 101/161/137 915/156/132 -f 918/162/138 89/151/127 90/163/139 -f 2700/164/140 102/165/141 917/160/136 -f 2701/166/142 90/163/139 2666/167/143 -f 934/168/144 104/169/145 827/170/146 -f 935/171/147 103/172/148 869/173/149 -f 922/174/150 104/169/145 919/175/151 -f 923/176/152 91/177/153 92/178/154 -f 924/179/155 105/180/156 922/174/150 -f 925/181/157 92/178/154 93/182/158 -f 926/183/159 106/184/160 924/179/155 -f 927/185/161 93/182/158 94/186/162 -f 928/187/163 107/188/164 926/183/159 -f 929/189/165 94/186/162 95/190/166 -f 930/191/167 108/192/168 928/187/163 -f 931/193/169 95/190/166 96/194/170 -f 932/195/171 109/196/172 930/191/167 -f 933/197/173 96/194/170 97/198/174 -f 910/148/124 110/199/175 932/195/171 -f 916/200/176 97/198/174 86/159/135 -f 131/201/177 1027/202/178 115/203/179 -f 123/204/180 1015/205/181 1014/206/182 -f 207/207/183 1028/208/184 1039/209/185 -f 150/210/186 1013/211/187 1017/212/188 -f 86/159/135 134/213/189 87/155/131 -f 102/165/141 138/214/190 101/161/137 -f 86/159/135 211/215/191 142/216/192 -f 152/217/193 125/218/194 149/219/195 -f 150/210/186 2712/220/196 2673/221/197 -f 152/217/193 2672/222/198 2675/223/199 -f 167/224/200 1034/225/201 155/226/202 -f 870/227/203 157/228/204 873/229/205 -f 872/230/206 1019/231/207 1018/232/208 -f 172/233/209 161/234/210 169/235/211 -f 178/236/212 1020/237/213 1022/238/214 -f 172/233/209 177/239/215 180/240/216 -f 186/241/217 1022/238/214 1023/242/218 -f 180/240/216 185/243/219 188/244/220 -f 186/241/217 1024/245/221 194/246/222 -f 188/244/220 193/247/223 196/248/224 -f 202/249/225 1024/245/221 1025/250/226 -f 204/251/227 193/247/223 201/252/228 -f 202/249/225 1026/253/229 210/254/230 -f 204/251/227 209/255/231 212/256/232 -f 120/257/233 208/258/234 205/259/235 -f 102/165/141 2669/260/236 146/261/237 -f 99/153/129 130/262/238 114/263/239 -f 104/169/145 166/264/240 154/265/241 -f 141/266/242 209/255/231 144/267/243 -f 143/268/244 1026/253/229 1016/269/245 -f 88/150/126 134/213/189 122/270/246 -f 98/147/123 206/271/247 110/199/175 -f 96/194/170 211/215/191 97/198/174 -f 205/259/235 200/272/248 197/273/249 -f 207/207/183 1038/274/250 199/275/251 -f 109/196/172 206/271/247 198/276/252 -f 96/194/170 195/277/253 203/278/254 -f 197/273/249 192/279/255 189/280/256 -f 199/275/251 1037/281/257 191/282/258 -f 108/192/168 198/276/252 190/283/259 -f 95/190/166 187/284/260 195/277/253 -f 181/285/261 192/279/255 184/286/262 -f 183/287/263 1037/281/257 1036/288/264 -f 108/192/168 182/289/265 107/188/164 -f 93/182/158 187/284/260 94/186/162 -f 181/285/261 176/290/266 173/291/267 -f 183/287/263 1035/292/268 175/293/269 -f 106/184/160 182/289/265 174/294/270 -f 93/182/158 171/295/271 179/296/272 -f 165/297/273 176/290/266 168/298/274 -f 175/293/269 1033/299/275 167/224/200 -f 105/180/156 174/294/270 166/264/240 -f 91/177/153 171/295/271 92/178/154 -f 828/300/276 156/301/277 831/302/278 -f 827/170/146 154/265/241 829/303/279 -f 170/304/280 1021/305/281 1020/237/213 -f 869/173/149 159/306/282 871/307/283 -f 830/308/284 1034/225/201 1032/309/285 -f 153/310/286 168/298/274 156/301/277 -f 90/163/139 2674/311/287 2666/167/143 -f 145/312/288 2671/313/289 148/314/290 -f 147/315/291 2713/316/292 1031/317/293 -f 101/161/137 130/262/238 100/157/133 -f 89/151/127 151/318/294 90/163/139 -f 137/319/295 148/314/290 140/320/296 -f 147/315/291 1030/321/297 139/322/298 -f 133/323/299 144/267/243 136/324/300 -f 143/268/244 1015/205/181 135/325/301 -f 137/319/295 132/326/302 129/327/303 -f 131/201/177 1030/321/297 1029/328/304 -f 121/329/305 125/218/194 128/330/306 -f 88/150/126 127/331/307 89/151/127 -f 120/257/233 116/332/308 117/333/309 -f 99/153/129 119/334/310 98/147/123 -f 123/204/180 1013/211/187 126/335/311 -f 121/329/305 136/324/300 124/336/312 -f 115/203/179 1028/208/184 118/337/313 -f 129/327/303 116/332/308 113/338/314 -f 212/256/232 142/216/192 211/215/191 -f 210/254/230 144/267/243 209/255/231 -f 205/259/235 119/334/310 120/257/233 -f 118/337/313 208/258/234 117/333/309 -f 212/256/232 203/278/254 204/251/227 -f 210/254/230 201/252/228 202/249/225 -f 205/259/235 198/276/252 206/271/247 -f 207/207/183 200/272/248 208/258/234 -f 204/251/227 195/277/253 196/248/224 -f 194/246/222 201/252/228 193/247/223 -f 189/280/256 198/276/252 197/273/249 -f 191/282/258 200/272/248 199/275/251 -f 196/248/224 187/284/260 188/244/220 -f 194/246/222 185/243/219 186/241/217 -f 181/285/261 190/283/259 189/280/256 -f 191/282/258 184/286/262 192/279/255 -f 188/244/220 179/296/272 180/240/216 -f 178/236/212 185/243/219 177/239/215 -f 181/285/261 174/294/270 182/289/265 -f 175/293/269 184/286/262 183/287/263 -f 172/233/209 179/296/272 171/295/271 -f 170/304/280 177/239/215 169/235/211 -f 165/297/273 174/294/270 173/291/267 -f 167/224/200 176/290/266 175/293/269 -f 164/339/315 171/295/271 163/340/316 -f 162/341/317 169/235/211 161/234/210 -f 153/310/286 166/264/240 165/297/273 -f 167/224/200 156/301/277 168/298/274 -f 164/339/315 871/307/283 870/227/203 -f 162/341/317 873/229/205 872/230/206 -f 160/342/318 829/303/279 828/300/276 -f 158/343/319 831/302/278 830/308/284 -f 2675/223/199 151/318/294 152/217/193 -f 2673/221/197 149/219/195 150/210/186 -f 145/312/288 2669/260/236 2668/344/320 -f 147/315/291 2671/313/289 2670/345/321 -f 152/217/193 127/331/307 128/330/306 -f 150/210/186 125/218/194 126/335/311 -f 137/319/295 146/261/237 145/312/288 -f 147/315/291 140/320/296 148/314/290 -f 141/266/242 134/213/189 142/216/192 -f 143/268/244 136/324/300 144/267/243 -f 129/327/303 138/214/190 137/319/295 -f 139/322/298 132/326/302 140/320/296 -f 133/323/299 122/270/246 134/213/189 -f 123/204/180 136/324/300 135/325/301 -f 129/327/303 114/263/239 130/262/238 -f 131/201/177 116/332/308 132/326/302 -f 128/330/306 122/270/246 121/329/305 -f 126/335/311 124/336/312 123/204/180 -f 113/338/314 119/334/310 114/263/239 -f 118/337/313 116/332/308 115/203/179 -f 457/346/322 214/133/109 234/129/105 -f 456/347/323 234/129/105 232/125/101 -f 455/348/324 232/125/101 230/121/97 -f 454/349/325 230/121/97 228/117/93 -f 453/350/326 228/117/93 226/111/87 -f 452/351/327 226/111/87 224/113/89 -f 451/352/328 224/113/89 222/138/114 -f 496/353/15 443/110/86 412/66/45 -f 519/354/329 424/355/330 512/356/331 -f 450/357/332 2676/91/69 217/89/67 -f 449/358/333 217/89/67 216/86/64 -f 448/359/334 216/86/64 215/88/66 -f 447/360/335 215/88/66 213/140/116 -f 446/361/336 213/140/116 214/133/109 -f 286/362/337 298/363/338 289/364/339 -f 299/365/340 66/366/341 288/93/71 -f 297/367/342 253/368/343 294/103/81 -f 219/369/344 251/98/76 296/370/345 -f 295/371/346 2665/372/347 2682/373/348 -f 301/374/349 257/375/350 298/363/338 -f 221/376/351 255/145/121 300/142/118 -f 293/377/352 285/378/353 282/379/354 -f 291/380/355 85/381/356 284/382/357 -f 235/383/358 324/384/359 328/144/120 -f 282/379/354 281/385/360 278/386/361 -f 284/382/357 84/387/362 280/388/363 -f 327/389/364 74/390/365 75/100/78 -f 233/391/366 320/392/367 324/384/359 -f 278/386/361 277/393/368 274/394/369 -f 280/388/363 83/395/370 276/396/371 -f 323/397/372 73/398/373 74/390/365 -f 231/399/374 316/400/375 320/392/367 -f 274/394/369 273/401/376 270/402/377 -f 276/396/371 82/403/378 272/404/379 -f 319/405/380 72/406/381 73/398/373 -f 229/407/382 312/408/383 316/400/375 -f 270/402/377 269/409/384 266/410/385 -f 272/404/379 81/411/386 268/412/387 -f 315/413/388 71/414/389 72/406/381 -f 227/415/390 308/416/391 312/408/383 -f 266/410/385 265/417/392 262/418/393 -f 268/412/387 80/419/394 264/105/83 -f 311/420/395 70/421/396 71/414/389 -f 225/422/397 304/423/398 308/416/391 -f 825/424/399 503/425/400 387/426/401 -f 523/427/15 411/67/46 491/428/402 -f 307/429/403 69/430/404 70/421/396 -f 511/431/405 416/432/406 500/433/407 -f 505/434/23 437/435/408 508/436/23 -f 262/418/393 261/437/409 258/438/410 -f 501/439/411 426/440/412 427/441/413 -f 2677/442/414 296/370/345 2683/443/80 -f 299/365/340 64/101/79 65/444/415 -f 254/445/416 326/136/112 257/375/350 -f 2678/446/417 249/447/418 247/448/419 -f 252/95/73 68/449/420 295/371/346 -f 250/450/421 289/364/339 253/368/343 -f 247/448/419 246/451/422 244/452/423 -f 997/453/424 992/454/425 984/455/426 -f 244/452/423 243/456/427 241/457/428 -f 996/458/429 2707/459/430 989/460/431 -f 237/461/432 290/462/433 293/377/352 -f 213/140/116 292/463/434 214/133/109 -f 239/464/435 76/465/436 291/380/355 -f 241/457/428 240/466/437 237/461/432 -f 301/374/349 287/97/75 300/142/118 -f 937/467/438 298/363/338 936/468/439 -f 286/362/337 251/98/76 287/97/75 -f 938/469/440 289/364/339 937/467/438 -f 329/135/111 255/145/121 328/144/120 -f 939/470/441 257/375/350 326/136/112 -f 282/379/354 292/463/434 293/377/352 -f 942/471/442 290/462/433 941/472/443 -f 325/131/107 328/144/120 324/384/359 -f 943/473/444 326/136/112 322/132/108 -f 278/386/361 283/134/110 282/379/354 -f 944/474/445 285/378/353 942/471/442 -f 321/127/103 324/384/359 320/392/367 -f 945/475/446 322/132/108 318/128/104 -f 274/394/369 279/130/106 278/386/361 -f 946/476/447 281/385/360 944/474/445 -f 317/123/99 320/392/367 316/400/375 -f 947/477/448 318/128/104 314/124/100 -f 270/402/377 275/126/102 274/394/369 -f 948/478/449 277/393/368 946/476/447 -f 313/119/95 316/400/375 312/408/383 -f 949/479/450 314/124/100 310/120/96 -f 266/410/385 271/122/98 270/402/377 -f 950/480/451 273/401/376 948/478/449 -f 309/114/90 312/408/383 308/416/391 -f 951/481/452 310/120/96 306/116/92 -f 262/418/393 267/118/94 266/410/385 -f 952/482/453 269/409/384 950/480/451 -f 305/483/454 308/416/391 304/423/398 -f 953/484/455 306/116/92 302/115/91 -f 258/438/410 263/112/88 262/418/393 -f 954/485/456 265/417/392 952/482/453 -f 502/26/23 434/486/457 510/487/23 -f 509/488/23 436/489/457 505/434/23 -f 297/367/342 2683/443/80 296/370/345 -f 2702/490/458 294/103/81 955/491/459 -f 254/445/416 300/142/118 255/145/121 -f 936/468/439 257/375/350 940/492/460 -f 247/448/419 2679/493/417 2678/446/417 -f 956/494/461 2680/495/462 2703/496/463 -f 250/450/421 296/370/345 251/98/76 -f 955/491/459 253/368/343 938/469/440 -f 244/452/423 248/92/70 247/448/419 -f 957/497/464 249/447/418 956/494/461 -f 241/457/428 245/90/68 244/452/423 -f 957/497/464 243/456/427 246/451/422 -f 237/461/432 242/87/65 241/457/428 -f 958/498/465 240/466/437 243/456/427 -f 293/377/352 238/139/115 237/461/432 -f 959/499/466 290/462/433 240/466/437 -f 43/45/35 2687/500/467 375/501/468 -f 370/502/469 377/85/63 373/503/470 -f 372/504/471 56/77/56 55/505/472 -f 42/62/42 375/501/468 371/78/57 -f 366/506/473 373/503/470 369/507/474 -f 368/508/475 55/505/472 54/509/476 -f 506/510/477 418/511/478 428/5/5 -f 362/512/479 369/507/474 365/513/480 -f 364/514/481 54/509/476 53/515/482 -f 358/516/483 365/513/480 361/517/484 -f 360/518/485 53/515/482 52/519/486 -f 40/64/44 367/79/58 363/74/53 -f 48/61/41 351/72/51 347/520/487 -f 354/521/488 361/517/484 357/522/489 -f 356/523/490 52/519/486 63/524/491 -f 350/525/492 357/522/489 353/526/493 -f 352/527/494 63/524/491 62/528/495 -f 346/529/496 353/526/493 349/530/497 -f 348/531/498 62/528/495 61/532/499 -f 342/533/500 349/530/497 345/534/501 -f 344/535/502 61/532/499 60/536/503 -f 47/47/36 347/520/487 343/537/504 -f 338/538/505 345/534/501 341/539/506 -f 340/540/507 60/536/503 59/541/508 -f 46/63/43 343/537/504 339/542/509 -f 334/543/510 341/539/506 337/544/511 -f 336/545/512 59/541/508 58/11/11 -f 45/53/38 339/542/509 335/546/513 -f 508/436/23 413/547/514 516/548/515 -f 510/487/23 435/549/457 509/488/23 -f 512/356/331 960/550/516 962/551/517 -f 330/552/518 337/544/511 333/553/519 -f 2688/554/467 375/501/468 2687/500/467 -f 2686/555/15 377/85/63 2685/84/15 -f 374/83/62 371/78/57 375/501/468 -f 376/75/54 373/503/470 377/85/63 -f 370/502/469 367/79/58 371/78/57 -f 372/504/471 369/507/474 373/503/470 -f 513/556/15 415/557/520 444/558/521 -f 516/548/515 459/559/522 521/560/523 -f 366/506/473 363/74/53 367/79/58 -f 368/508/475 365/513/480 369/507/474 -f 362/512/479 359/73/52 363/74/53 -f 364/514/481 361/517/484 365/513/480 -f 358/516/483 355/71/50 359/73/52 -f 360/518/485 357/522/489 361/517/484 -f 354/521/488 351/72/51 355/71/50 -f 356/523/490 353/526/493 357/522/489 -f 350/525/492 347/520/487 351/72/51 -f 352/527/494 349/530/497 353/526/493 -f 346/529/496 343/537/504 347/520/487 -f 348/531/498 345/534/501 349/530/497 -f 342/533/500 339/542/509 343/537/504 -f 344/535/502 341/539/506 345/534/501 -f 338/538/505 335/546/513 339/542/509 -f 340/540/507 337/544/511 341/539/506 -f 334/543/510 331/561/524 335/546/513 -f 336/545/512 333/553/519 337/544/511 -f 517/562/525 429/563/526 426/440/412 -f 520/82/61 423/564/527 519/354/329 -f 44/565/528 335/546/513 331/561/524 -f 1203/566/529 383/567/530 1200/568/531 -f 1200/568/531 384/569/532 1204/570/533 -f 1204/570/533 385/571/534 1206/572/535 -f 1206/572/535 386/573/536 1208/574/537 -f 1208/574/537 2689/575/538 1210/576/539 -f 1215/577/540 867/578/541 1265/579/542 -f 1216/580/543 388/581/544 389/582/545 -f 1218/583/546 389/582/545 390/584/547 -f 1220/585/548 390/584/547 391/586/549 -f 1222/587/550 391/586/549 392/588/551 -f 1224/589/552 392/588/551 393/590/553 -f 1226/591/554 393/590/553 394/592/555 -f 1203/566/529 394/592/555 382/593/556 -f 1228/594/557 396/595/558 395/596/559 -f 1231/597/560 397/598/561 396/595/558 -f 1233/599/562 398/600/563 397/598/561 -f 1235/601/564 399/602/565 398/600/563 -f 1237/603/566 2691/604/567 399/602/565 -f 1241/605/568 825/606/399 1263/607/569 -f 1243/608/570 400/609/571 1241/605/568 -f 1245/610/572 401/611/573 1243/608/570 -f 1247/612/574 402/613/575 1245/610/572 -f 1249/614/576 403/615/577 1247/612/574 -f 1251/616/578 404/617/579 1249/614/576 -f 1253/618/580 405/619/581 1251/616/578 -f 1228/594/557 406/620/582 1253/618/580 -f 1239/621/583 2690/622/584 2691/604/567 -f 1210/576/539 2692/623/585 1256/624/586 -f 1256/624/586 2693/625/587 1258/626/588 -f 1260/627/589 2693/625/587 2694/628/590 -f 1255/629/591 2694/630/590 2690/622/584 -f 875/631/592 490/632/593 884/633/594 -f 407/634/595 876/635/596 875/631/592 -f 491/636/402 834/637/597 843/638/598 -f 835/639/599 407/634/595 834/637/597 -f 881/640/600 414/641/601 877/642/602 -f 439/643/603 882/644/604 879/645/604 -f 427/441/413 588/646/605 589/647/606 -f 459/559/522 582/648/607 420/649/608 -f 417/650/609 848/651/610 837/2/2 -f 426/440/412 591/652/611 588/646/605 -f 424/355/330 964/653/612 960/550/516 -f 878/654/613 579/655/614 890/656/615 -f 422/81/60 585/657/616 423/564/527 -f 420/649/608 584/658/617 422/81/60 -f 421/69/48 589/647/606 583/659/618 -f 423/564/527 586/660/619 424/355/330 -f 425/661/620 579/662/614 416/432/406 -f 458/663/621 891/664/622 883/665/623 -f 410/666/624 880/667/604 876/635/596 -f 442/668/86 841/669/625 838/670/625 -f 412/671/45 839/672/625 835/639/599 -f 444/673/521 836/674/626 840/675/627 -f 879/645/604 434/676/457 880/667/604 -f 881/640/600 436/677/457 882/644/604 -f 838/670/625 438/678/603 839/672/625 -f 840/675/627 440/679/603 841/669/625 -f 494/680/628 427/441/413 421/69/48 -f 495/681/15 445/682/86 442/109/86 -f 492/683/15 444/558/521 445/682/86 -f 886/684/629 416/685/406 878/654/613 -f 415/686/520 842/687/630 836/674/626 -f 414/641/601 883/688/623 877/642/602 -f 521/560/523 420/649/608 515/80/59 -f 52/519/486 447/360/335 446/361/336 -f 53/515/482 448/359/334 447/360/335 -f 54/509/476 449/358/333 448/359/334 -f 55/505/472 450/357/332 449/358/333 -f 56/77/56 2695/689/631 450/357/332 -f 57/12/12 452/351/327 451/352/328 -f 58/11/11 453/350/326 452/351/327 -f 59/541/508 454/349/325 453/350/326 -f 60/536/503 455/348/324 454/349/325 -f 61/532/499 456/347/323 455/348/324 -f 62/528/495 457/346/322 456/347/323 -f 63/524/491 446/361/336 457/346/322 -f 514/690/632 460/70/49 415/557/520 -f 572/691/633 843/638/598 847/692/634 -f 884/633/594 571/693/635 889/694/636 -f 523/427/15 572/695/633 577/696/637 -f 524/697/638 408/698/639 498/24/23 -f 51/699/640 615/700/641 381/701/642 -f 536/702/643 651/703/644 559/704/645 -f 31/705/646 622/706/647 33/707/648 -f 10/708/649 635/709/650 9/7/7 -f 35/710/651 622/706/647 621/711/652 -f 11/712/653 634/713/654 10/708/649 -f 380/714/655 613/715/656 379/716/657 -f 37/717/658 621/711/652 619/718/659 -f 12/719/660 633/720/661 11/712/653 -f 37/717/658 620/721/662 14/722/663 -f 1/723/664 632/724/665 12/719/660 -f 16/725/666 620/721/662 631/726/667 -f 575/727/15 484/40/32 558/728/32 -f 558/728/32 483/36/31 557/729/31 -f 557/729/31 482/34/30 556/730/30 -f 556/730/30 481/32/29 555/731/29 -f 555/731/29 480/30/28 554/732/28 -f 554/732/28 479/27/25 553/733/25 -f 553/733/25 478/29/27 552/734/668 -f 2699/735/15 477/20/20 551/736/20 -f 551/736/20 476/18/18 550/737/18 -f 550/737/18 475/16/16 549/738/16 -f 549/738/16 474/13/13 548/739/13 -f 548/739/13 473/15/15 575/727/15 -f 13/740/669 639/741/670 5/742/671 -f 2/743/672 611/744/673 1/723/664 -f 378/745/674 617/746/675 13/740/669 -f 18/747/676 631/726/667 630/748/677 -f 3/749/678 612/750/679 2/743/672 -f 379/716/657 616/751/680 378/745/674 -f 20/752/681 630/748/677 629/753/682 -f 4/754/683 641/755/684 3/749/678 -f 20/752/681 628/756/685 22/757/686 -f 5/742/671 640/758/687 4/754/683 -f 381/701/642 614/759/688 380/760/655 -f 51/699/640 628/756/685 618/761/689 -f 24/762/690 846/763/691 833/764/692 -f 535/765/693 461/766/694 573/767/695 -f 471/768/696 535/765/693 534/769/697 -f 470/770/698 534/769/697 533/771/699 -f 469/772/700 533/771/699 532/773/701 -f 468/774/702 532/773/701 531/775/703 -f 467/776/704 531/775/703 530/777/705 -f 466/778/706 530/777/705 529/779/707 -f 465/780/708 2698/781/695 528/782/709 -f 464/783/710 528/782/709 527/784/711 -f 463/785/712 527/784/711 526/786/713 -f 462/787/714 526/786/713 525/788/715 -f 461/766/694 525/788/715 573/767/695 -f 760/789/716 523/427/15 577/696/637 -f 752/790/717 522/68/47 514/690/632 -f 904/791/718 500/792/407 886/684/629 -f 744/793/15 513/556/15 492/683/15 -f 747/794/15 492/683/15 495/681/15 -f 746/795/719 501/439/411 494/680/628 -f 754/796/61 519/354/329 743/797/329 -f 742/798/525 518/799/720 517/562/525 -f 740/800/15 514/690/632 513/556/15 -f 751/801/721 962/551/517 970/802/722 -f 738/803/723 507/804/724 506/510/477 -f 504/805/725 889/806/636 885/807/726 -f 862/808/727 577/809/637 844/810/728 -f 737/811/411 517/562/525 501/439/411 -f 739/812/729 500/433/407 736/813/730 -f 756/814/731 499/65/15 523/427/15 -f 813/815/732 887/816/733 908/817/734 -f 743/797/329 512/356/331 751/801/721 -f 735/818/15 497/108/15 496/353/15 -f 748/819/15 495/681/15 497/108/15 -f 741/820/735 520/82/61 754/796/61 -f 755/821/47 494/680/628 522/68/47 -f 735/818/15 499/65/15 749/822/736 -f 969/823/737 506/510/477 963/4/4 -f 745/824/738 845/3/3 861/825/739 -f 759/826/732 524/697/638 757/827/740 -f 844/810/728 572/828/633 847/829/634 -f 573/767/695 383/830/530 382/831/556 -f 525/788/715 384/832/532 383/830/530 -f 526/786/713 385/833/534 384/832/532 -f 527/784/711 386/834/536 385/833/534 -f 528/782/709 2689/835/538 386/834/536 -f 529/779/707 389/836/545 388/837/544 -f 530/777/705 390/838/547 389/836/545 -f 531/775/703 391/839/549 390/838/547 -f 532/773/701 392/840/551 391/839/549 -f 533/771/699 393/841/553 392/840/551 -f 393/841/553 535/765/693 394/842/555 -f 535/765/693 382/831/556 394/842/555 -f 396/843/558 575/727/15 395/844/559 -f 397/845/561 548/739/13 396/843/558 -f 398/846/563 549/738/16 397/845/561 -f 399/847/565 550/737/18 398/846/563 -f 399/847/565 2699/735/15 551/736/20 -f 401/848/573 552/734/668 400/849/571 -f 402/850/575 553/733/25 401/848/573 -f 403/851/577 554/732/28 402/850/575 -f 404/852/579 555/731/29 403/851/577 -f 405/853/581 556/730/30 404/852/579 -f 406/854/582 557/729/31 405/853/581 -f 395/844/559 558/728/32 406/854/582 -f 29/855/741 623/856/742 31/705/646 -f 8/9/9 637/857/743 7/858/744 -f 27/859/745 624/860/746 29/855/741 -f 7/858/744 638/861/747 6/862/748 -f 27/859/745 625/863/749 626/864/750 -f 6/862/748 888/865/751 874/866/752 -f 887/867/733 388/837/544 867/868/541 -f 524/697/638 571/869/635 490/870/593 -f 589/647/606 600/871/753 601/872/754 -f 593/873/755 419/874/756 582/648/607 -f 588/646/605 603/875/757 600/871/753 -f 586/660/619 966/876/758 964/653/612 -f 584/658/617 597/877/759 585/657/616 -f 582/648/607 596/878/760 584/658/617 -f 583/659/618 601/872/754 595/879/761 -f 585/657/616 598/880/762 586/660/619 -f 587/881/763 433/882/764 579/662/614 -f 594/883/765 595/879/761 610/884/766 -f 590/885/767 431/886/768 602/887/769 -f 592/888/770 898/889/771 891/664/622 -f 961/6/6 590/885/767 965/890/772 -f 842/891/630 594/892/765 849/893/773 -f 428/5/5 581/894/774 590/885/767 -f 460/70/49 583/659/618 594/883/765 -f 605/895/775 897/896/776 894/897/777 -f 608/898/778 893/899/779 898/900/771 -f 856/901/780 595/902/761 851/903/781 -f 600/904/753 855/905/782 852/906/783 -f 595/902/761 853/907/784 851/903/781 -f 430/908/785 895/909/786 893/899/779 -f 602/910/769 850/911/787 854/912/788 -f 607/913/789 892/914/790 896/915/791 -f 894/897/777 596/916/760 895/909/786 -f 966/917/758 897/896/776 976/918/792 -f 605/895/775 853/907/784 852/906/783 -f 975/919/793 606/920/794 855/905/782 -f 579/655/614 892/914/790 890/656/615 -f 849/893/773 610/921/766 856/922/780 -f 965/890/772 602/887/769 967/923/795 -f 580/924/796 850/911/787 848/651/610 -f 673/925/797 611/926/673 612/927/679 -f 680/928/798 614/929/688 677/930/799 -f 677/931/799 615/932/641 681/933/800 -f 684/934/801 613/935/656 680/928/798 -f 686/936/802 616/937/680 684/934/801 -f 681/933/800 618/938/689 687/939/803 -f 689/940/804 620/941/662 619/942/659 -f 689/940/804 621/943/652 693/944/805 -f 693/944/805 622/945/647 695/946/806 -f 697/947/807 622/945/647 623/948/742 -f 699/949/808 623/948/742 624/950/746 -f 701/951/809 626/952/750 625/953/749 -f 701/951/809 846/954/691 860/955/810 -f 687/939/803 628/956/685 707/957/811 -f 707/957/811 629/958/682 709/959/812 -f 709/959/812 630/960/677 711/961/813 -f 711/961/813 631/962/667 713/963/814 -f 692/964/815 631/962/667 620/941/662 -f 676/965/816 632/966/665 611/926/673 -f 716/967/817 633/968/661 632/966/665 -f 718/969/818 634/970/654 633/968/661 -f 720/971/819 635/972/650 634/970/654 -f 724/973/820 635/972/650 722/974/821 -f 699/949/808 626/952/750 704/975/822 -f 726/976/823 636/977/8 724/973/820 -f 728/978/824 637/979/743 726/976/823 -f 705/980/825 888/981/751 902/982/826 -f 730/983/827 617/984/675 686/936/802 -f 730/983/827 640/985/687 639/986/670 -f 732/987/828 641/988/684 640/985/687 -f 734/989/829 612/927/679 641/988/684 -f 900/990/830 659/991/831 858/992/832 -f 562/993/833 664/994/834 665/995/835 -f 537/996/836 650/997/837 536/702/643 -f 562/993/833 666/998/838 563/999/839 -f 538/1000/840 652/1001/841 537/996/836 -f 563/999/839 667/1002/842 564/1003/843 -f 538/1000/840 654/1004/844 653/1005/845 -f 541/1006/846 655/1007/847 540/1008/848 -f 540/1008/848 654/1004/844 539/1009/849 -f 564/1003/843 668/1010/850 565/1011/851 -f 542/1012/852 657/1013/853 541/1006/846 -f 565/1011/851 669/1014/854 566/1015/855 -f 567/1016/856 858/1017/832 857/1018/857 -f 566/1015/855 900/1019/830 899/1020/858 -f 544/1021/859 649/1022/860 543/1023/861 -f 111/1024/862 642/1025/863 112/1026/864 -f 568/1027/865 670/1028/866 569/1029/867 -f 545/1030/868 659/1031/831 544/1021/859 -f 485/1032/869 644/1033/870 486/1034/871 -f 569/1029/867 671/1035/872 574/1036/873 -f 546/1037/874 660/1038/875 545/1030/868 -f 488/1039/876 645/1040/877 485/1041/869 -f 574/1036/873 672/1042/878 576/1043/879 -f 547/1044/880 661/1045/881 546/1037/874 -f 487/1046/882 644/1033/870 647/1047/883 -f 111/1024/862 672/1042/878 643/1048/884 -f 559/704/645 662/1049/885 547/1044/880 -f 487/1046/882 648/1050/886 568/1027/865 -f 112/1026/864 663/1051/887 560/1052/888 -f 488/1039/876 649/1022/860 646/1053/889 -f 560/1052/888 664/994/834 561/1054/890 -f 111/1055/862 733/1056/891 576/1057/879 -f 733/1056/891 673/925/797 734/989/829 -f 576/1057/879 731/1058/892 574/1059/873 -f 733/1056/891 732/987/828 731/1058/892 -f 569/1060/867 731/1058/892 729/1061/893 -f 731/1058/892 730/983/827 729/1061/893 -f 569/1060/867 685/1062/894 568/1063/865 -f 685/1062/894 730/983/827 686/936/802 -f 567/1064/856 901/1065/895 899/1066/858 -f 706/1067/896 902/982/826 901/1065/895 -f 566/1068/855 725/1069/897 565/1070/851 -f 725/1069/897 728/978/824 726/976/823 -f 565/1070/851 723/1071/898 564/1072/843 -f 723/1071/898 726/976/823 724/973/820 -f 540/1073/848 703/1074/899 541/1075/846 -f 700/1076/900 704/975/822 703/1074/899 -f 563/1077/839 723/1071/898 721/1078/901 -f 723/1071/898 722/974/821 721/1078/901 -f 563/1077/839 719/1079/902 562/1080/833 -f 719/1079/902 722/974/821 720/971/819 -f 561/1081/890 719/1079/902 717/1082/903 -f 717/1082/903 720/971/819 718/969/818 -f 561/1081/890 715/1083/904 560/1084/888 -f 715/1083/904 718/969/818 716/967/817 -f 560/1084/888 675/1085/905 112/1086/864 -f 675/1085/905 716/967/817 676/965/816 -f 547/1087/880 691/1088/906 559/1089/645 -f 714/1090/907 692/964/815 691/1088/906 -f 546/1091/874 714/1090/907 547/1087/880 -f 714/1090/907 711/961/813 713/963/814 -f 545/1092/868 712/1093/908 546/1091/874 -f 712/1093/908 709/959/812 711/961/813 -f 544/1094/859 710/1095/909 545/1092/868 -f 710/1095/909 707/957/811 709/959/812 -f 543/1096/861 708/1097/910 544/1094/859 -f 708/1097/910 687/939/803 707/957/811 -f 542/1098/852 859/1099/911 857/1100/857 -f 702/1101/912 860/955/810 859/1099/911 -f 542/1098/852 703/1074/899 702/1101/912 -f 703/1074/899 701/951/809 702/1101/912 -f 540/1073/848 698/1102/913 700/1076/900 -f 698/1102/913 699/949/808 700/1076/900 -f 538/1103/840 698/1102/913 539/1104/849 -f 696/1105/914 697/947/807 698/1102/913 -f 537/1106/836 696/1105/914 538/1103/840 -f 694/1107/915 695/946/806 696/1105/914 -f 536/1108/643 694/1107/915 537/1106/836 -f 694/1107/915 689/940/804 693/944/805 -f 536/1108/643 691/1088/906 690/1109/916 -f 691/1088/906 689/940/804 690/1109/916 -f 543/1096/861 682/1110/917 688/1111/918 -f 682/1110/917 687/939/803 688/1111/918 -f 568/1063/865 683/1112/919 487/1113/882 -f 683/1112/919 686/936/802 684/934/801 -f 486/1114/871 683/1112/919 679/1115/920 -f 679/1115/920 684/934/801 680/928/798 -f 488/1116/876 678/1117/921 682/1110/917 -f 678/1117/921 681/933/800 682/1110/917 -f 485/1118/869 679/1115/920 678/1119/921 -f 679/1115/920 677/930/799 678/1119/921 -f 111/1055/862 675/1085/905 674/1120/922 -f 675/1085/905 673/925/797 674/1120/922 -f 810/1121/740 759/826/732 757/827/740 -f 788/1122/923 861/825/739 866/1123/924 -f 974/1124/925 738/803/723 969/823/737 -f 767/1125/15 749/822/736 796/1126/926 -f 808/1127/47 746/795/719 755/821/47 -f 779/1128/927 754/796/61 806/1129/61 -f 792/1130/15 748/819/15 794/1131/15 -f 794/1131/15 735/818/15 767/1125/15 -f 783/1132/928 751/801/721 800/1133/929 -f 578/1134/930 903/1135/734 885/807/726 -f 478/1136/27 763/1137/931 552/1138/668 -f 775/1139/932 736/813/730 769/1140/933 -f 771/1141/411 742/798/525 737/811/411 -f 864/1142/727 760/1143/716 862/808/727 -f 773/1144/934 750/1145/935 738/803/723 -f 800/1133/929 970/802/722 972/1146/936 -f 777/1147/15 752/790/717 740/800/15 -f 781/1148/937 753/1149/938 742/798/525 -f 806/1129/61 743/797/329 783/1132/928 -f 790/1150/719 737/811/411 746/795/719 -f 786/1151/15 747/794/15 792/1130/15 -f 777/1147/15 744/793/15 786/1151/15 -f 906/1152/939 736/1153/730 904/791/718 -f 802/1154/717 755/821/47 752/790/717 -f 756/1155/731 764/1156/940 749/1157/736 -f 820/1158/941 764/1159/940 765/1160/942 -f 820/1158/941 766/1161/943 822/1162/944 -f 796/1163/926 764/1164/940 818/1165/945 -f 478/1136/27 761/1166/946 762/1167/947 -f 760/1168/716 765/1169/942 756/1155/731 -f 824/1170/948 763/1171/931 821/1172/949 -f 760/1173/716 822/1174/944 766/1175/943 -f 816/1176/950 821/1172/949 822/1174/944 -f 795/1177/951 761/1178/946 26/1179/26 -f 795/1177/951 818/1165/945 817/1180/952 -f 763/1181/931 819/1182/953 821/1183/949 -f 819/1182/953 822/1162/944 821/1183/949 -f 762/1184/947 817/1185/952 819/1182/953 -f 819/1182/953 818/1186/945 820/1158/941 -f 57/1187/12 807/1188/47 801/1189/717 -f 801/1189/717 808/1127/47 802/1154/717 -f 69/1190/404 905/1191/954 868/1192/955 -f 905/1191/954 769/1193/933 906/1152/939 -f 332/1194/10 785/1195/15 333/1196/519 -f 778/1197/15 786/1151/15 785/1195/15 -f 333/1196/519 791/1198/15 330/1199/518 -f 785/1195/15 792/1130/15 791/1198/15 -f 222/1200/114 772/1201/956 789/1202/719 -f 789/1202/719 771/1141/411 790/1150/719 -f 304/1203/398 784/1204/928 305/1205/454 -f 805/1206/957 783/1132/928 784/1204/928 -f 258/1207/410 803/1208/958 782/1209/937 -f 782/1209/937 804/1210/959 781/1148/937 -f 57/1187/12 778/1197/15 332/1194/10 -f 801/1189/717 777/1147/15 778/1197/15 -f 302/1211/91 971/1212/960 953/1213/455 -f 799/1214/961 972/1146/936 971/1212/960 -f 260/1215/85 797/1216/962 774/1217/963 -f 774/1217/963 798/1218/964 773/1144/934 -f 832/1219/965 815/1220/966 863/1221/727 -f 863/1221/727 823/1222/966 864/1142/727 -f 259/1223/113 782/1209/937 772/1201/956 -f 772/1201/956 781/1148/937 771/1141/411 -f 303/1224/967 770/1225/968 69/1226/404 -f 776/1227/969 769/1140/933 770/1225/968 -f 305/1205/454 799/1214/961 302/1211/91 -f 784/1204/928 800/1133/929 799/1214/961 -f 331/1228/524 768/1229/15 44/1230/528 -f 793/1231/15 767/1125/15 768/1229/15 -f 330/1199/518 793/1231/15 331/1228/524 -f 791/1198/15 794/1131/15 793/1231/15 -f 223/1232/970 805/1206/957 304/1203/398 -f 780/1233/971 806/1129/61 805/1206/957 -f 451/1234/328 789/1202/719 807/1188/47 -f 807/1188/47 790/1150/719 808/1127/47 -f 44/1230/528 795/1235/951 26/1236/26 -f 768/1229/15 796/1126/926 795/1235/951 -f 954/1237/456 774/1217/963 973/1238/972 -f 973/1238/972 773/1144/934 974/1124/925 -f 78/1239/973 865/1240/974 826/1241/975 -f 787/1242/976 866/1123/924 865/1240/974 -f 529/779/707 809/1243/740 466/778/706 -f 809/1243/740 814/1244/732 810/1121/740 -f 759/1245/732 907/1246/734 903/1135/734 -f 814/1247/732 908/817/734 907/1246/734 -f 824/1248/948 815/1249/966 552/1250/668 -f 823/1251/966 824/1248/948 816/1252/950 -f 823/1251/966 816/1252/950 760/1253/716 -f 865/1240/974 798/1254/964 797/1255/962 -f 79/1256/84 865/1240/974 797/1255/962 -f 811/1257/977 864/1142/727 812/1258/977 -f 503/1259/400 863/1221/727 811/1257/977 -f 812/1258/977 862/808/727 758/1260/977 -f 866/1123/924 750/1261/935 798/1254/964 -f 706/1067/896 860/955/810 705/980/825 -f 567/1064/856 859/1099/911 706/1067/896 -f 857/1018/857 656/1262/978 542/1012/852 -f 705/980/825 846/954/691 627/1263/979 -f 581/1264/774 850/911/787 431/1265/768 -f 849/893/773 608/1266/778 592/888/770 -f 967/1267/795 855/905/782 603/1268/757 -f 852/906/783 601/1269/754 600/904/753 -f 607/913/789 850/911/787 432/1270/980 -f 430/908/785 853/907/784 604/1271/981 -f 605/895/775 855/905/782 606/920/794 -f 608/898/778 851/903/781 430/908/785 -f 842/891/630 592/888/770 458/663/621 -f 844/810/728 570/1272/982 504/805/725 -f 861/825/739 507/1273/724 750/1261/935 -f 758/1260/977 844/810/728 504/805/725 -f 25/1274/983 846/763/691 625/863/749 -f 847/692/634 489/1275/984 570/1276/982 -f 414/641/601 842/687/630 458/1277/621 -f 840/675/627 445/1278/86 444/673/521 -f 838/670/625 443/1279/86 442/668/86 -f 840/675/627 414/641/601 441/1280/985 -f 410/666/624 839/672/625 438/678/603 -f 838/670/625 440/679/603 439/643/603 -f 837/2/2 581/1264/774 418/1281/478 -f 411/1282/46 835/639/599 834/637/597 -f 843/638/598 407/634/595 489/1275/984 -f 1215/577/540 825/606/399 387/1283/401 -f 400/849/571 832/1284/965 825/424/399 -f 155/226/202 831/302/278 156/301/277 -f 153/310/286 829/303/279 154/265/241 -f 830/308/284 1019/1285/207 158/343/319 -f 827/170/146 159/1286/282 103/1287/148 -f 828/300/276 157/1288/204 160/342/318 -f 934/168/144 103/1287/148 920/1289/986 -f 845/3/3 418/1281/478 507/1273/724 -f 907/1246/734 811/1257/977 812/1258/977 -f 903/1135/734 812/1258/977 758/1260/977 -f 787/1242/976 906/1152/939 788/1122/923 -f 78/1239/973 905/1191/954 787/1242/976 -f 788/1122/923 904/791/718 745/824/738 -f 885/807/726 758/1260/977 504/805/725 -f 727/1290/987 902/982/826 728/978/824 -f 566/1068/855 901/1065/895 727/1290/987 -f 899/1020/858 658/1291/988 567/1016/856 -f 728/978/824 888/981/751 638/1292/747 -f 890/656/615 432/1270/980 580/924/796 -f 976/918/792 606/920/794 968/1293/989 -f 605/895/775 895/909/786 604/1271/981 -f 599/1294/990 892/914/790 433/1295/764 -f 419/1296/756 895/909/786 596/916/760 -f 898/900/771 419/1296/756 609/1297/991 -f 597/1298/759 897/896/776 598/1299/762 -f 891/664/622 609/1300/991 593/1301/755 -f 503/425/400 867/868/541 387/426/401 -f 874/866/752 627/1302/979 24/762/690 -f 908/817/734 503/1259/400 811/1257/977 -f 885/807/726 571/1303/635 578/1134/930 -f 745/824/738 886/684/629 493/1/1 -f 489/1275/984 889/694/636 570/1276/982 -f 413/1304/514 883/688/623 459/1305/522 -f 493/1/1 878/654/613 417/650/609 -f 881/640/600 440/679/603 441/1280/985 -f 879/645/604 438/678/603 439/643/603 -f 409/1306/24 880/667/604 434/676/457 -f 883/665/623 593/1301/755 459/1307/522 -f 878/654/613 580/924/796 417/650/609 -f 435/1308/457 882/644/604 436/677/457 -f 437/1309/408 877/642/602 413/1304/514 -f 408/1310/639 876/635/596 409/1306/24 -f 407/634/595 884/633/594 489/1275/984 -f 1212/1311/992 867/578/541 388/581/544 -f 158/1312/319 873/229/205 157/228/204 -f 160/1313/318 871/307/283 159/306/282 -f 869/173/149 163/340/316 91/177/153 -f 872/230/206 1021/305/281 162/341/317 -f 870/227/203 161/234/210 164/339/315 -f 935/171/147 91/177/153 921/1314/993 -f 868/1315/955 921/1314/993 69/430/404 -f 826/1316/975 920/1289/986 78/1317/973 -f 64/101/79 933/197/173 916/200/176 -f 76/465/436 932/195/171 85/381/356 -f 75/100/78 931/193/169 933/197/173 -f 85/381/356 930/191/167 84/387/362 -f 74/390/365 929/189/165 931/193/169 -f 84/387/362 928/187/163 83/395/370 -f 73/398/373 927/185/161 929/189/165 -f 83/395/370 926/183/159 82/403/378 -f 72/406/381 925/181/157 927/185/161 -f 82/403/378 924/179/155 81/411/386 -f 71/414/389 923/176/152 925/181/157 -f 81/411/386 922/174/150 80/419/394 -f 70/421/396 921/1314/993 923/176/152 -f 80/419/394 919/175/151 79/106/84 -f 868/1315/955 920/1318/986 935/171/147 -f 826/1316/975 919/175/151 934/168/144 -f 2665/372/347 918/162/138 2701/166/142 -f 994/1319/994 2706/1320/995 2711/1321/996 -f 68/449/420 912/149/125 918/162/138 -f 65/444/415 916/200/176 914/158/134 -f 66/366/341 914/158/134 911/154/130 -f 915/1322/132 993/1323/997 917/1324/136 -f 67/94/72 911/154/130 912/149/125 -f 77/1325/998 910/148/124 76/465/436 -f 896/915/791 968/1293/989 607/913/789 -f 602/910/769 975/919/793 967/1267/795 -f 803/1208/958 974/1124/925 804/1210/959 -f 261/1326/409 973/1238/972 803/1208/958 -f 971/1212/960 775/1139/932 776/1227/969 -f 953/1213/455 776/1227/969 303/1224/967 -f 972/1146/936 739/812/729 775/1139/932 -f 804/1210/959 969/823/737 753/1149/938 -f 591/652/611 967/923/795 603/875/757 -f 854/912/788 968/1293/989 975/919/793 -f 599/1294/990 976/918/792 896/915/791 -f 429/563/526 965/890/772 591/652/611 -f 964/653/612 599/1327/990 587/881/763 -f 753/1149/938 963/4/4 518/799/720 -f 970/802/722 511/431/405 739/812/729 -f 960/550/516 587/881/763 425/661/620 -f 962/551/517 425/661/620 511/431/405 -f 239/464/435 941/472/443 959/499/466 -f 295/371/346 938/469/440 252/95/73 -f 1000/1328/999 989/460/431 990/1329/1000 -f 299/365/340 940/492/460 256/99/77 -f 2682/373/348 955/491/459 295/371/346 -f 260/107/85 952/482/453 264/105/83 -f 303/1330/967 951/481/452 953/484/455 -f 264/105/83 950/480/451 268/412/387 -f 307/429/403 949/479/450 951/481/452 -f 268/412/387 948/478/449 272/404/379 -f 311/420/395 947/477/448 949/479/450 -f 272/404/379 946/476/447 276/396/371 -f 315/413/388 945/475/446 947/477/448 -f 276/396/371 944/474/445 280/388/363 -f 319/405/380 943/473/444 945/475/446 -f 280/388/363 942/471/442 284/382/357 -f 323/397/372 939/470/441 943/473/444 -f 284/382/357 941/472/443 291/380/355 -f 327/389/364 940/492/460 939/470/441 -f 252/95/73 937/467/438 288/93/71 -f 288/93/71 936/468/439 299/365/340 -f 518/799/720 961/6/6 429/563/526 -f 956/1331/461 999/1332/1001 957/1333/464 -f 218/1334/74 1091/1335/1002 236/1336/117 -f 780/1337/971 1193/1338/1003 779/1339/927 -f 757/1340/740 1175/1341/1004 1174/1342/740 -f 236/1336/117 1092/1343/1005 221/1344/351 -f 779/1339/927 1183/1345/1006 741/1346/735 -f 505/1347/23 1167/1348/23 1179/1349/23 -f 462/1350/714 1042/1351/740 1153/1352/740 -f 219/1353/344 1087/1354/1007 218/1334/74 -f 502/1355/23 1169/1356/23 1165/1357/23 -f 462/1350/714 1154/1358/740 463/1359/712 -f 463/1359/712 1155/1360/740 464/1361/710 -f 221/1344/351 1089/1362/1008 220/1363/119 -f 223/1364/970 1152/1365/1009 780/1337/971 -f 464/1361/710 1156/1366/740 465/1367/708 -f 2677/1368/414 1100/1369/1010 219/1353/344 -f 509/1370/23 1179/1349/23 1178/1371/23 -f 465/1367/708 2723/1372/740 2696/1373/1011 -f 467/1374/704 1157/1375/740 1158/1376/740 -f 741/1346/735 1177/1377/1012 515/1378/59 -f 508/1379/23 1171/1380/23 1167/1348/23 -f 468/1381/702 1158/1376/740 1159/1382/740 -f 510/1383/23 1178/1371/23 1169/1356/23 -f 809/1384/740 1189/1385/740 1199/1386/740 -f 469/1387/700 1159/1382/740 1160/1388/740 -f 225/1389/397 1099/1390/1013 223/1364/970 -f 466/1391/706 1199/1386/740 1157/1375/740 -f 470/1392/698 1160/1388/740 1161/1393/740 -f 471/1394/696 1161/1393/740 1162/1395/740 -f 227/1396/390 1098/1397/1014 225/1389/397 -f 516/1398/515 1173/1399/1015 1171/1380/23 -f 472/1400/1016 1162/1395/740 1163/1401/740 -f 810/1402/740 1174/1342/740 1189/1385/740 -f 461/1403/694 1163/1401/740 1042/1351/740 -f 229/1404/382 1097/1405/1017 227/1396/390 -f 231/1406/374 1096/1407/1018 229/1404/382 -f 498/1408/23 1165/1357/23 1176/1409/23 -f 233/1410/366 1095/1411/1019 231/1406/374 -f 521/1412/523 1177/1377/1012 1173/1399/1015 -f 235/1413/358 1094/1414/1020 233/1410/366 -f 220/1363/119 1093/1415/1021 235/1413/358 -f 524/1416/638 1176/1409/23 1175/1341/1004 -f 239/1417/435 1010/1418/1022 998/1419/1023 -f 239/1417/435 1007/1420/1024 77/1421/998 -f 957/1333/464 1011/1422/1025 958/1423/465 -f 909/1424/122 1003/1425/1026 913/1426/128 -f 77/1421/998 1006/1427/1027 909/1428/122 -f 958/1423/465 1010/1429/1022 959/1430/466 -f 984/1431/426 977/1432/1028 978/1433/1029 -f 981/1434/1030 2704/1435/1031 980/1436/1032 -f 982/1437/1033 980/1436/1032 979/1438/1034 -f 983/1439/1035 979/1438/1034 977/1432/1028 -f 2704/1435/1031 988/1440/1036 980/1436/1032 -f 980/1436/1032 987/1441/1037 979/1438/1034 -f 979/1438/1034 986/1442/1038 977/1432/1028 -f 977/1432/1028 985/1443/1039 978/1433/1029 -f 983/1439/1035 992/1444/425 991/1445/1040 -f 982/1437/1033 991/1445/1040 990/1446/1000 -f 981/1434/1030 990/1446/1000 989/1447/431 -f 2705/1448/1041 989/1447/431 2707/1449/430 -f 1009/1450/1042 991/1451/1040 992/1452/425 -f 1008/1453/1043 985/1454/1039 1005/1455/1044 -f 1004/1456/1045 987/1457/1037 1001/1458/1046 -f 913/1426/128 1002/1459/1047 915/1322/132 -f 1008/1453/1043 984/455/426 978/1460/1029 -f 1005/1461/1044 986/1462/1038 1004/1456/1045 -f 1001/1458/1046 988/1463/1036 994/1319/994 -f 2703/1464/463 995/1465/1048 956/1331/461 -f 917/1324/136 2710/1466/1049 2700/1467/140 -f 1012/1468/1050 990/1329/1000 991/1451/1040 -f 1012/1468/1050 1010/1429/1022 1011/1422/1025 -f 1005/1455/1044 1007/1420/1024 1008/1453/1043 -f 1001/1458/1046 1003/1425/1026 1004/1456/1045 -f 1000/1328/999 1011/1422/1025 999/1332/1001 -f 1009/1469/1042 998/1419/1023 1010/1418/1022 -f 1000/1328/999 995/1465/1048 996/458/429 -f 1004/1456/1045 1006/1470/1027 1005/1461/1044 -f 2709/1471/1051 995/1465/1048 2708/1472/1052 -f 2711/1321/996 993/1323/997 994/1319/994 -f 994/1319/994 1002/1459/1047 1001/1458/1046 -f 997/453/424 1007/1420/1024 998/1419/1023 -f 1041/1473/695 1153/1352/740 1042/1351/740 -f 1040/1474/695 1154/1358/740 1153/1352/740 -f 1043/1475/695 1155/1360/740 1154/1358/740 -f 1044/1476/695 1156/1366/740 1155/1360/740 -f 1045/1477/695 2723/1372/740 1156/1366/740 -f 1047/1478/695 1158/1376/740 1157/1375/740 -f 1046/1479/695 1159/1382/740 1158/1376/740 -f 1048/1480/695 1160/1388/740 1159/1382/740 -f 1049/1481/695 1161/1393/740 1160/1388/740 -f 1050/1482/695 1162/1395/740 1161/1393/740 -f 1051/1483/695 1163/1401/740 1162/1395/740 -f 1163/1401/740 1041/1473/695 1042/1351/740 -f 1050/1482/695 1063/1484/695 1051/1483/695 -f 2714/1485/695 1057/1486/695 2715/1487/695 -f 1049/1481/695 1060/1488/695 1061/1489/695 -f 1044/1476/695 1055/1490/695 1056/1491/695 -f 1047/1478/695 1058/1492/695 1046/1479/695 -f 1051/1483/695 1064/1493/695 1052/1494/695 -f 1040/1474/695 1054/1495/695 1053/1496/695 -f 1049/1481/695 1062/1497/695 1050/1482/695 -f 1045/1477/695 1056/1491/695 1057/1486/695 -f 1046/1479/695 1060/1488/695 1048/1480/695 -f 1052/1494/695 1054/1495/695 1041/1473/695 -f 1043/1475/695 1053/1496/695 1055/1490/695 -f 1109/1498/695 1072/1499/695 1110/1500/695 -f 1149/1501/695 1146/1502/695 1145/1503/695 -f 1145/1503/695 1142/1504/695 1141/1505/695 -f 1147/1506/695 1075/1507/695 1143/1508/695 -f 1141/1505/695 1138/1509/695 1137/1510/695 -f 1139/1511/695 1068/1512/695 1135/1513/695 -f 1137/1510/695 1134/1514/695 1133/1515/695 -f 1135/1513/695 1067/1516/695 1131/1517/695 -f 1133/1515/695 1130/1518/695 1129/1519/695 -f 1129/1519/695 1126/1520/695 1125/1521/695 -f 1125/1521/695 1122/1522/695 1121/1523/695 -f 1121/1523/695 1118/1524/695 1117/1525/695 -f 1114/1526/695 1070/1527/695 1109/1498/695 -f 1113/1528/695 1108/1529/695 1105/1530/695 -f 1151/1531/695 1074/1532/695 1147/1506/695 -f 1078/1533/695 1091/1335/1002 1090/1534/695 -f 1090/1534/695 1087/1354/1007 1086/1535/695 -f 1085/1536/695 1089/1362/1008 1088/1537/695 -f 1084/1538/695 1093/1415/1021 1085/1536/695 -f 1083/1539/695 1094/1414/1020 1084/1538/695 -f 1082/1540/695 1095/1411/1019 1083/1539/695 -f 1081/1541/695 1096/1407/1018 1082/1540/695 -f 1080/1542/695 1097/1405/1017 1081/1541/695 -f 1080/1542/695 1099/1390/1013 1098/1397/1014 -f 1077/1543/695 2718/1544/1010 2717/1545/695 -f 1088/1537/695 1092/1343/1005 1078/1533/695 -f 1086/1535/695 1100/1369/1010 1077/1543/695 -f 1106/1546/695 1150/1547/695 1149/1501/695 -f 1060/1488/695 1148/1548/695 1061/1489/695 -f 1059/1549/695 1104/1550/695 1058/1492/695 -f 1058/1492/695 1107/1551/695 1060/1488/695 -f 1117/1525/695 2722/1552/695 2719/1553/695 -f 1119/1554/695 2716/1555/695 2721/1556/695 -f 1056/1491/695 1116/1557/695 1057/1486/695 -f 1123/1558/695 1069/1559/695 1119/1554/695 -f 1055/1490/695 1120/1560/695 1056/1491/695 -f 1127/1561/695 1065/1562/695 1123/1558/695 -f 1053/1496/695 1124/1563/695 1055/1490/695 -f 1131/1517/695 1066/1564/695 1127/1561/695 -f 1054/1495/695 1128/1565/695 1053/1496/695 -f 1057/1486/695 2720/1566/695 2715/1487/695 -f 1064/1493/695 1132/1567/695 1054/1495/695 -f 1063/1484/695 1136/1568/695 1064/1493/695 -f 1143/1508/695 1076/1569/695 1139/1511/695 -f 1062/1497/695 1140/1570/695 1063/1484/695 -f 1061/1489/695 1144/1571/695 1062/1497/695 -f 1110/1500/695 1073/1572/695 1151/1531/695 -f 1105/1530/695 1111/1573/695 1106/1546/695 -f 1106/1546/695 1104/1550/695 1105/1530/695 -f 1110/1500/695 1108/1529/695 1109/1498/695 -f 1105/1530/695 1112/1574/695 1113/1528/695 -f 1109/1498/695 1103/1575/695 1114/1526/695 -f 2719/1553/695 1116/1557/695 1117/1525/695 -f 2721/1556/695 1118/1524/695 1119/1554/695 -f 1117/1525/695 1120/1560/695 1121/1523/695 -f 1119/1554/695 1122/1522/695 1123/1558/695 -f 1121/1523/695 1124/1563/695 1125/1521/695 -f 1123/1558/695 1126/1520/695 1127/1561/695 -f 1125/1521/695 1128/1565/695 1129/1519/695 -f 1127/1561/695 1130/1518/695 1131/1517/695 -f 1129/1519/695 1132/1567/695 1133/1515/695 -f 1131/1517/695 1134/1514/695 1135/1513/695 -f 1133/1515/695 1136/1568/695 1137/1510/695 -f 1135/1513/695 1138/1509/695 1139/1511/695 -f 1137/1510/695 1140/1570/695 1141/1505/695 -f 1139/1511/695 1142/1504/695 1143/1508/695 -f 1141/1505/695 1144/1571/695 1145/1503/695 -f 1143/1508/695 1146/1502/695 1147/1506/695 -f 1145/1503/695 1148/1548/695 1149/1501/695 -f 1147/1506/695 1150/1547/695 1151/1531/695 -f 1149/1501/695 1107/1551/695 1106/1546/695 -f 1151/1531/695 1111/1573/695 1110/1500/695 -f 1065/1562/695 1077/1543/695 1069/1559/695 -f 1068/1512/695 1078/1533/695 1067/1516/695 -f 1069/1559/695 2717/1545/695 2716/1555/695 -f 1070/1527/695 1079/1576/695 1080/1542/695 -f 1070/1527/695 1081/1541/695 1072/1499/695 -f 1072/1499/695 1082/1540/695 1073/1572/695 -f 1073/1572/695 1083/1539/695 1074/1532/695 -f 1074/1532/695 1084/1538/695 1075/1507/695 -f 1075/1507/695 1085/1536/695 1076/1569/695 -f 1076/1569/695 1088/1537/695 1068/1512/695 -f 1066/1564/695 1086/1535/695 1065/1562/695 -f 1067/1516/695 1090/1534/695 1066/1564/695 -f 1174/1342/740 1176/1409/23 1180/1577/695 -f 1172/1578/695 1177/1377/1012 1183/1345/1006 -f 1170/1579/695 1173/1399/1015 1172/1578/695 -f 1182/1580/695 1169/1356/23 1178/1371/23 -f 1166/1581/695 1171/1380/23 1170/1579/695 -f 1181/1582/695 1178/1371/23 1179/1349/23 -f 1168/1583/695 1165/1357/23 1169/1356/23 -f 1166/1581/695 1179/1349/23 1167/1348/23 -f 1180/1577/695 1165/1357/23 1164/1584/695 -f 1190/1585/695 1164/1584/695 1184/1586/695 -f 1185/1587/695 1181/1582/695 1166/1581/695 -f 1186/1588/695 1164/1584/695 1168/1583/695 -f 1191/1589/695 1182/1580/695 1181/1582/695 -f 1185/1587/695 1170/1579/695 1187/1590/695 -f 1192/1591/695 1168/1583/695 1182/1580/695 -f 1187/1590/695 1172/1578/695 1188/1592/695 -f 1188/1592/695 1183/1345/1006 1193/1338/1003 -f 1189/1385/740 1180/1577/695 1190/1585/695 -f 1047/1478/695 1199/1386/740 1101/1593/695 -f 1101/1593/695 1189/1385/740 1190/1585/695 -f 1079/1576/695 1152/1365/1009 1099/1390/1013 -f 1198/1594/695 1193/1338/1003 1152/1365/1009 -f 1071/1595/695 1198/1594/695 1079/1576/695 -f 1197/1596/695 1188/1592/695 1198/1594/695 -f 1113/1528/695 1196/1597/695 1115/1598/695 -f 1115/1598/695 1186/1588/695 1192/1591/695 -f 1071/1595/695 1195/1599/695 1197/1596/695 -f 1197/1596/695 1185/1587/695 1187/1590/695 -f 1103/1575/695 1115/1598/695 1102/1600/695 -f 1102/1600/695 1192/1591/695 1191/1589/695 -f 1112/1574/695 1194/1601/695 1196/1597/695 -f 1196/1597/695 1184/1586/695 1186/1588/695 -f 1114/1526/695 1102/1600/695 1195/1599/695 -f 1195/1599/695 1191/1589/695 1185/1587/695 -f 1047/1478/695 1194/1601/695 1059/1549/695 -f 1101/1593/695 1184/1586/695 1194/1601/695 -f 6/1602/748 1264/1603/1053 1213/1604/1054 -f 1213/1604/1054 1265/579/542 1212/1311/992 -f 24/1605/690 1262/1606/1055 1214/1607/1056 -f 1214/1607/1056 1263/607/569 1215/577/540 -f 381/1608/642 1261/1609/1057 1254/1610/1058 -f 1254/1610/1058 1260/1611/589 1255/629/591 -f 380/1612/655 1259/1613/1059 1261/1614/1057 -f 1261/1614/1057 1258/626/588 1260/627/589 -f 378/1615/674 1259/1613/1059 379/1616/657 -f 1257/1617/1060 1258/626/588 1259/1613/1059 -f 13/1618/669 1257/1617/1060 378/1615/674 -f 1211/1619/1061 1256/624/586 1257/1617/1060 -f 51/1620/640 1254/1610/1058 1238/1621/1062 -f 1238/1621/1062 1255/629/591 1239/621/583 -f 37/1622/658 1229/1623/1063 1252/1624/1064 -f 1252/1624/1064 1228/594/557 1253/618/580 -f 35/1625/651 1252/1624/1064 1250/1626/1065 -f 1252/1624/1064 1251/616/578 1250/1626/1065 -f 35/1625/651 1248/1627/1066 33/1628/648 -f 1250/1626/1065 1249/614/576 1248/1627/1066 -f 33/1628/648 1246/1629/1067 31/1630/646 -f 1248/1627/1066 1247/612/574 1246/1629/1067 -f 31/1630/646 1244/1631/1068 29/1632/741 -f 1246/1629/1067 1245/610/572 1244/1631/1068 -f 29/1632/741 1242/1633/1069 27/1634/745 -f 1244/1631/1068 1243/608/570 1242/1633/1069 -f 27/1634/745 1240/1635/1070 25/1636/983 -f 1242/1633/1069 1241/605/568 1240/1635/1070 -f 25/1636/983 1262/1606/1055 833/1637/692 -f 1240/1635/1070 1263/607/569 1262/1606/1055 -f 22/1638/686 1238/1621/1062 1236/1639/1071 -f 1236/1639/1071 1239/621/583 1237/603/566 -f 20/1640/681 1236/1639/1071 1234/1641/1072 -f 1234/1641/1072 1237/603/566 1235/601/564 -f 18/1642/676 1234/1641/1072 1232/1643/1073 -f 1232/1643/1073 1235/601/564 1233/599/562 -f 16/1644/666 1232/1643/1073 1230/1645/1074 -f 1230/1645/1074 1233/599/562 1231/597/560 -f 14/1646/663 1230/1645/1074 1229/1623/1063 -f 1229/1623/1063 1231/597/560 1228/594/557 -f 12/1647/660 1202/1648/1075 1/1649/664 -f 1202/1648/1075 1226/591/554 1203/566/529 -f 12/1647/660 1225/1650/1076 1227/1651/1077 -f 1227/1651/1077 1224/589/552 1226/591/554 -f 11/1652/653 1223/1653/1078 1225/1650/1076 -f 1225/1650/1076 1222/587/550 1224/589/552 -f 10/1654/649 1221/1655/1079 1223/1653/1078 -f 1223/1653/1078 1220/585/548 1222/587/550 -f 9/1656/7 1219/1657/1080 1221/1655/1079 -f 1221/1655/1079 1218/583/546 1220/585/548 -f 8/1658/9 1217/1659/1081 1219/1657/1080 -f 1219/1657/1080 1216/580/543 1218/583/546 -f 7/1660/744 1213/1604/1054 1217/1659/1081 -f 1217/1659/1081 1212/1311/992 1216/580/543 -f 24/1605/690 1264/1603/1053 874/1661/752 -f 1214/1607/1056 1265/579/542 1264/1603/1053 -f 5/1662/671 1211/1619/1061 13/1618/669 -f 1209/1663/1082 1210/576/539 1211/1619/1061 -f 4/1664/683 1209/1663/1082 5/1662/671 -f 1207/1665/1083 1208/574/537 1209/1663/1082 -f 3/1666/678 1207/1665/1083 4/1664/683 -f 1205/1667/1084 1206/572/535 1207/1665/1083 -f 2/1668/672 1205/1667/1084 3/1666/678 -f 1201/1669/1085 1204/570/533 1205/1667/1084 -f 1/1649/664 1201/1669/1085 2/1668/672 -f 1202/1648/1075 1200/568/531 1201/1669/1085 -f 1295/1670/1086 1395/1671/1087 1294/1672/1088 -f 2771/1673/1089 1302/1674/1090 1303/1675/1091 -f 2800/1676/1092 1278/1677/1093 2796/1678/1094 -f 1314/1679/1095 1310/1680/1096 1311/1681/1097 -f 1319/1682/1098 1322/1683/1099 1318/1684/1100 -f 2829/1685/1101 1271/1686/1102 1269/1687/1103 -f 1356/1688/1104 2725/1689/1105 1389/1690/1106 -f 1365/1691/1107 1281/1692/1108 2731/1693/1109 -f 2785/1694/1110 1279/1695/1111 1280/1696/1112 -f 1377/1697/1113 2729/1698/1114 1373/1699/1115 -f 1026/253/229 1292/1700/1116 1016/269/245 -f 1390/1701/1117 1354/1702/1118 1355/1703/1119 -f 1027/202/178 1360/1704/1120 1352/1705/1121 -f 1312/1706/1122 2747/1707/1123 2746/1708/1124 -f 2849/1709/1125 2752/1710/1126 2742/1711/1127 -f 1369/1712/1128 2729/1698/1114 2730/1713/1129 -f 1032/309/285 1308/1714/1130 1019/1285/207 -f 2849/1709/1125 2869/1715/1131 2853/1716/1132 -f 1034/225/201 1372/1717/1133 1340/1718/1134 -f 2833/1719/1135 1269/1687/1103 1268/1720/1136 -f 1296/1721/1137 2751/1722/1138 2750/1723/1139 -f 2816/1724/1140 1283/1725/1141 1273/1726/1142 -f 1297/1727/1143 2724/1728/1144 2749/1729/1145 -f 1361/1730/1146 2733/1731/1147 1357/1732/1148 -f 1013/211/187 1396/1733/1149 1300/1734/1150 -f 2808/1735/1151 1276/1736/1152 2804/1737/1153 -f 2780/1738/1154 1283/1739/1141 2773/1740/1155 -f 1394/1741/1156 1299/1742/1157 1395/1671/1087 -f 1336/1743/1158 2736/1744/1159 1348/1745/1160 -f 1390/1701/1117 1387/1746/1161 1391/1747/1162 -f 1382/1748/1163 1387/1746/1161 1386/1749/1164 -f 1382/1748/1163 1379/1750/1165 1383/1751/1166 -f 1378/1752/1167 1375/1753/1168 1379/1750/1165 -f 1370/1754/1169 1375/1753/1168 1374/1755/1170 -f 1370/1754/1169 1339/1756/1171 1371/1757/1172 -f 1306/1758/1173 1342/1759/1174 1343/1760/1175 -f 1021/305/281 1317/1761/1176 1020/237/213 -f 2837/1762/1177 1281/1692/1108 2784/1763/1178 -f 1366/1764/1179 1363/1765/1180 1367/1766/1181 -f 1319/1682/1098 1315/1767/1182 1314/1679/1095 -f 1362/1768/1183 1359/1769/1184 1363/1765/1180 -f 1350/1770/1185 1359/1769/1184 1358/1771/1186 -f 1027/202/178 1353/1772/1187 1028/208/184 -f 1320/1773/1188 2743/1774/1189 1324/1775/1190 -f 1290/1776/1191 1346/1777/1192 1347/1778/1193 -f 2761/1779/1194 2872/1780/1195 2865/1781/1196 -f 1032/309/285 1340/1718/1134 1341/1782/1197 -f 1335/1783/1198 1346/1777/1192 1334/1784/1199 -f 1331/1785/1200 1334/1784/1199 1330/1786/1201 -f 1331/1785/1200 1326/1787/1202 1327/1788/1203 -f 1327/1788/1203 1322/1683/1099 1323/1789/1204 -f 1018/232/208 1308/1790/1130 1309/1791/1205 -f 1366/1764/1179 2782/1792/1206 2783/1793/1207 -f 1013/211/187 1301/1794/1208 1017/212/188 -f 1015/205/181 1292/1700/1116 1293/1795/1209 -f 1313/1796/1210 2744/1797/1211 1320/1773/1188 -f 1015/205/181 1396/1733/1149 1014/206/182 -f 1303/1675/1091 1299/1742/1157 1298/1798/1212 -f 1039/209/185 1353/1772/1187 1392/1799/1213 -f 1038/274/250 1392/1799/1213 1388/1800/1214 -f 1038/274/250 1384/1801/1215 1037/281/257 -f 1036/288/264 1384/1801/1215 1380/1802/1216 -f 1035/292/268 1380/1802/1216 1376/1803/1217 -f 1033/299/275 1376/1803/1217 1372/1717/1133 -f 1338/1804/1218 1342/1759/1174 1339/1756/1171 -f 1306/1805/1173 1310/1680/1096 1307/1806/1219 -f 2713/316/292 1368/1807/1220 1031/317/293 -f 1031/317/293 1364/1808/1221 1030/321/297 -f 1018/232/208 1316/1809/1222 1021/305/281 -f 1029/328/304 1364/1808/1221 1360/1704/1120 -f 1350/1770/1185 1354/1702/1118 1351/1810/1223 -f 2816/1724/1140 1274/1811/1224 2809/1812/1225 -f 1290/1776/1191 1294/1672/1088 1291/1813/1226 -f 1025/250/226 1345/1814/1227 1026/253/229 -f 2792/1815/1228 1278/1677/1093 1279/1695/1111 -f 1025/250/226 1329/1816/1229 1333/1817/1230 -f 1023/242/218 1329/1816/1229 1024/245/221 -f 1022/238/214 1325/1818/1231 1023/242/218 -f 1022/238/214 1317/1761/1176 1321/1819/1232 -f 1344/1820/1233 2738/1821/1234 2737/1822/1235 -f 2828/1823/1236 2871/1824/1237 1270/1825/1238 -f 2712/220/196 1301/1794/1208 2769/1826/1239 -f 1377/1697/1113 2727/1827/1240 2728/1828/1241 -f 1357/1732/1148 2735/1829/1242 1349/1830/1243 -f 1393/1831/1244 1295/1670/1086 1296/1721/1137 -f 1293/1795/1209 1395/1671/1087 1396/1733/1149 -f 1297/1727/1143 1394/1741/1156 1393/1831/1244 -f 1396/1733/1149 1299/1742/1157 1300/1734/1150 -f 1389/1690/1106 1355/1703/1119 1356/1688/1104 -f 1353/1772/1187 1391/1747/1162 1392/1799/1213 -f 1389/1690/1106 1386/1749/1164 1390/1701/1117 -f 1392/1799/1213 1387/1746/1161 1388/1800/1214 -f 1385/1832/1245 1382/1748/1163 1386/1749/1164 -f 1384/1801/1215 1387/1746/1161 1383/1751/1166 -f 1381/1833/1246 1378/1752/1167 1382/1748/1163 -f 1380/1802/1216 1383/1751/1166 1379/1750/1165 -f 1373/1699/1115 1378/1752/1167 1377/1697/1113 -f 1380/1802/1216 1375/1753/1168 1376/1803/1217 -f 1373/1699/1115 1370/1754/1169 1374/1755/1170 -f 1372/1717/1133 1375/1753/1168 1371/1757/1172 -f 1337/1834/1247 1370/1754/1169 1369/1712/1128 -f 1340/1718/1134 1371/1757/1172 1339/1756/1171 -f 1305/1835/1248 1343/1760/1175 1344/1820/1233 -f 1341/1782/1197 1307/1836/1219 1308/1714/1130 -f 2784/1763/1178 1366/1764/1179 2783/1793/1207 -f 1368/1807/1220 2782/1792/1206 1367/1766/1181 -f 1361/1730/1146 1366/1764/1179 1365/1691/1107 -f 1368/1807/1220 1363/1765/1180 1364/1808/1221 -f 1313/1796/1210 1311/1681/1097 1312/1706/1122 -f 1309/1791/1205 1315/1767/1182 1316/1809/1222 -f 1361/1730/1146 1358/1771/1186 1362/1768/1183 -f 1360/1704/1120 1363/1765/1180 1359/1769/1184 -f 1349/1830/1243 1358/1771/1186 1357/1732/1148 -f 1360/1704/1120 1351/1810/1223 1352/1705/1121 -f 1349/1830/1243 1355/1703/1119 1350/1770/1185 -f 1352/1705/1121 1354/1702/1118 1353/1772/1187 -f 1348/1745/1160 1290/1776/1191 1347/1778/1193 -f 1345/1814/1227 1291/1813/1226 1292/1700/1116 -f 1336/1743/1158 1347/1778/1193 1335/1783/1198 -f 1333/1817/1230 1346/1777/1192 1345/1814/1227 -f 1337/1834/1247 1343/1760/1175 1338/1804/1218 -f 1341/1782/1197 1339/1756/1171 1342/1759/1174 -f 1336/1743/1158 1331/1785/1200 1332/1837/1249 -f 1333/1817/1230 1330/1786/1201 1334/1784/1199 -f 1332/1837/1249 1327/1788/1203 1328/1838/1250 -f 1325/1818/1231 1330/1786/1201 1329/1816/1229 -f 1324/1775/1190 1327/1788/1203 1323/1789/1204 -f 1321/1819/1232 1326/1787/1202 1325/1818/1231 -f 1324/1775/1190 1319/1682/1098 1320/1773/1188 -f 1321/1819/1232 1318/1684/1100 1322/1683/1099 -f 1320/1773/1188 1314/1679/1095 1313/1796/1210 -f 1316/1809/1222 1318/1684/1100 1317/1761/1176 -f 1305/1839/1248 1311/1681/1097 1306/1805/1173 -f 1309/1791/1205 1307/1806/1219 1310/1680/1096 -f 1304/1840/1251 2771/1673/1089 1303/1675/1091 -f 2769/1826/1239 1302/1674/1090 2770/1841/1252 -f 1304/1840/1251 1298/1798/1212 1297/1727/1143 -f 1300/1734/1150 1302/1674/1090 1301/1794/1208 -f 1296/1721/1137 1290/1776/1191 1289/1842/1253 -f 1293/1795/1209 1291/1813/1226 1294/1672/1088 -f 2233/1843/1254 1889/1844/1255 2241/1845/1256 -f 2359/1846/1257 1824/1847/1258 1902/1848/1259 -f 2032/1849/1260 1405/1850/1261 1404/1851/1262 -f 1728/1852/1263 1454/1853/1264 1732/1854/1265 -f 1411/1855/1266 1870/1856/32 1869/1857/15 -f 1413/1858/1267 1871/1859/31 1870/1856/32 -f 1415/1860/1268 1872/1861/30 1871/1859/31 -f 1417/1862/1269 1873/1863/1270 1872/1861/30 -f 1419/1864/1271 2697/1865/15 1873/1863/1270 -f 1805/1866/1272 1894/1867/1273 1898/1868/1273 -f 1422/1869/1274 1875/1870/1275 1874/1871/1276 -f 1424/1872/1275 1876/1873/1277 1875/1870/1275 -f 1426/1874/1277 1877/1875/1278 1876/1873/1277 -f 1428/1876/1278 1878/1877/18 1877/1875/1278 -f 1430/1878/18 1879/1879/16 1878/1877/18 -f 1432/1880/16 1880/1881/13 1879/1879/16 -f 1434/1882/13 1869/1857/15 1880/1881/13 -f 1430/1883/18 1445/1884/1279 1432/1885/16 -f 2662/44/34 1439/1886/1280 2663/1887/1281 -f 1426/1888/1277 1443/1889/1282 1428/1890/1278 -f 1417/1891/1269 1437/1892/1283 1438/1893/1284 -f 1422/1894/1274 1441/1895/1285 1424/1896/1275 -f 1432/1885/16 1446/1897/1286 1434/1898/13 -f 1413/1899/1267 1435/1900/1287 1436/1901/1288 -f 1428/1890/1278 1444/1902/1289 1430/1883/18 -f 1419/1903/1271 1438/1893/1284 1439/1886/1280 -f 1424/1896/1275 1442/1904/1290 1426/1888/1277 -f 1411/1905/1266 1446/1897/1286 1435/1900/1287 -f 1415/1906/1268 1436/1901/1288 1437/1892/1283 -f 1895/1907/15 1808/1908/1291 1892/1909/15 -f 1918/1910/1292 1817/1911/1293 1890/1912/1294 -f 1445/1884/1279 1751/1913/1295 1446/1897/1286 -f 1446/1897/1286 1755/1914/1296 1435/1900/1287 -f 1435/1900/1287 1759/1915/1297 1436/1901/1288 -f 1772/1916/1298 2664/76/55 2686/555/15 -f 1437/1892/1283 1767/1917/1299 1438/1893/1284 -f 1818/1918/1300 1911/1919/1301 1916/1920/1302 -f 1770/1921/1303 2685/84/15 2688/554/467 -f 1638/1922/1304 1612/1923/1305 1611/1924/1306 -f 1641/1925/1307 1613/1926/1308 1612/1923/1305 -f 1644/1927/1309 2676/91/69 1613/1926/1308 -f 1463/1928/1310 1684/1929/1311 1648/1930/1312 -f 1614/1931/1313 1683/1932/1314 1632/1933/1315 -f 1652/1934/1316 1471/1935/1317 1723/1936/1318 -f 2684/102/80 1690/1937/1319 1693/1938/1320 -f 1475/1939/1321 1660/1940/1322 1656/1941/1323 -f 1893/1942/15 1838/1943/1324 1891/1944/15 -f 1659/1945/1325 1622/1946/1326 1620/1947/1327 -f 1705/1948/1328 1698/1949/1329 1701/1950/1330 -f 1663/1951/1331 1624/1952/1332 1622/1946/1326 -f 1709/1953/1333 1702/1954/1334 1705/1948/1328 -f 1667/1955/1335 1626/1956/1336 1624/1952/1332 -f 1713/1957/1337 1706/1958/1338 1709/1953/1333 -f 1671/1959/1339 1628/1960/1340 1626/1956/1336 -f 1717/1961/1341 1710/1962/1342 1713/1957/1337 -f 1675/1963/1343 1630/1964/1344 1628/1960/1340 -f 1721/1965/1345 1714/1966/1346 1717/1961/1341 -f 1679/1967/1347 1610/1968/1348 1630/1964/1344 -f 1725/1969/1349 1718/1970/1350 1721/1965/1345 -f 1655/1971/1351 1620/1947/1327 1618/1972/1352 -f 1634/1973/1353 1611/1924/1306 1609/1974/1354 -f 1632/1933/1315 1696/1975/1355 1617/1976/1356 -f 1616/1977/1357 1724/1978/1358 1631/1979/1359 -f 1494/1980/1360 2305/1981/1361 2306/1982/1362 -f 2308/1983/1363 1484/1984/1364 2307/1985/1365 -f 1495/1986/1366 2309/1987/1367 2305/1981/1361 -f 2307/1985/1365 1483/1988/1368 2310/1989/1369 -f 1496/1990/1370 2311/1991/1371 2309/1987/1367 -f 2310/1989/1369 1482/1992/1372 2312/1993/1373 -f 1497/1994/1374 2313/1995/1375 2311/1991/1371 -f 2314/1996/1376 1485/1997/1377 2308/1983/1363 -f 1498/1998/1378 2700/164/140 2313/1995/1375 -f 2701/166/142 1486/1999/1379 2314/1996/1376 -f 2330/2000/1380 1500/2001/1381 2315/2002/1382 -f 2331/2003/1383 1499/2004/1384 2316/2005/1385 -f 1500/2001/1381 2318/2006/1386 2315/2002/1382 -f 2319/2007/1387 1487/2008/1388 2317/2009/1389 -f 1501/2010/1390 2320/2011/1391 2318/2006/1386 -f 2321/2012/1392 1488/2013/1393 2319/2007/1387 -f 1502/2014/1394 2322/2015/1395 2320/2011/1391 -f 2323/2016/1396 1489/2017/1397 2321/2012/1392 -f 1503/2018/1398 2324/2019/1399 2322/2015/1395 -f 2325/2020/1400 1490/2021/1401 2323/2016/1396 -f 1504/2022/1402 2326/2023/1403 2324/2019/1399 -f 2327/2024/1404 1491/2025/1405 2325/2020/1400 -f 1505/2026/1406 2328/2027/1407 2326/2023/1403 -f 2329/2028/1408 1492/2029/1409 2327/2024/1404 -f 1506/2030/1410 2306/1982/1362 2328/2027/1407 -f 2312/1993/1373 1493/2031/1411 2329/2028/1408 -f 2423/2032/1412 1527/2033/1413 1511/2034/1414 -f 1519/2035/1415 2411/2036/1416 1531/2037/1417 -f 1603/2038/1418 2424/2039/1419 1514/2040/1420 -f 1546/2041/1421 2409/2042/1422 1522/2043/1423 -f 1530/2044/1424 1482/1992/1372 1483/1988/1368 -f 1534/2045/1425 1498/1998/1378 1497/1994/1374 -f 1538/2046/1426 1493/2031/1411 1482/1992/1372 -f 1548/2047/1427 1521/2048/1428 1524/2049/1429 -f 2712/220/196 1546/2041/1421 2673/221/197 -f 2672/222/198 1548/2047/1427 2675/223/199 -f 2430/2050/1430 1563/2051/1431 1551/2052/1432 -f 2266/2053/1433 1553/2054/1434 1556/2055/1435 -f 2268/2056/1436 2415/2057/1437 1554/2058/1438 -f 1568/2059/1439 1557/2060/1440 1560/2061/1441 -f 1574/2062/1442 2416/2063/1443 1566/2064/1444 -f 1573/2065/1445 1568/2059/1439 1576/2066/1446 -f 1582/2067/1447 2418/2068/1448 1574/2062/1442 -f 1581/2069/1449 1576/2066/1446 1584/2070/1450 -f 2420/2071/1451 1582/2067/1447 1590/2072/1452 -f 1589/2073/1453 1584/2070/1450 1592/2074/1454 -f 1598/2075/1455 2420/2071/1451 1590/2072/1452 -f 1600/2076/1456 1589/2073/1453 1592/2074/1454 -f 2422/2077/1457 1598/2075/1455 1606/2078/1458 -f 1605/2079/1459 1600/2076/1456 1608/2080/1460 -f 1604/2081/1461 1516/2082/1462 1601/2083/1463 -f 1498/1998/1378 2669/260/236 2667/2084/1464 -f 1495/1986/1366 1526/2085/1465 1496/1990/1370 -f 1500/2001/1381 1562/2086/1466 1501/2010/1390 -f 1537/2087/1467 1605/2079/1459 1608/2080/1460 -f 1539/2088/1468 2422/2077/1457 1606/2078/1458 -f 1518/2089/1469 1483/1988/1368 1484/1984/1364 -f 1602/2090/1470 1494/1980/1360 1506/2030/1410 -f 1607/2091/1471 1492/2029/1409 1493/2031/1411 -f 1596/2092/1472 1601/2083/1463 1593/2093/1473 -f 2434/2094/1474 1603/2038/1418 1595/2095/1475 -f 1505/2026/1406 1602/2090/1470 1506/2030/1410 -f 1492/2029/1409 1591/2096/1476 1491/2025/1405 -f 1588/2097/1477 1593/2093/1473 1585/2098/1478 -f 2433/2099/1479 1595/2095/1475 1587/2100/1480 -f 1504/2022/1402 1594/2101/1481 1505/2026/1406 -f 1491/2025/1405 1583/2102/1482 1490/2021/1401 -f 1577/2103/1483 1588/2097/1477 1585/2098/1478 -f 1579/2104/1484 2433/2099/1479 1587/2100/1480 -f 1578/2105/1485 1504/2022/1402 1503/2018/1398 -f 1583/2102/1482 1489/2017/1397 1490/2021/1401 -f 1572/2106/1486 1577/2103/1483 1569/2107/1487 -f 2431/2108/1488 1579/2104/1484 1571/2109/1489 -f 1502/2014/1394 1578/2105/1485 1503/2018/1398 -f 1489/2017/1397 1567/2110/1490 1488/2013/1393 -f 1561/2111/1491 1572/2106/1486 1569/2107/1487 -f 1563/2051/1431 2431/2108/1488 1571/2109/1489 -f 1501/2010/1390 1570/2112/1492 1502/2014/1394 -f 1567/2110/1490 1487/2008/1388 1488/2013/1393 -f 2224/2113/1493 1552/2114/1494 1549/2115/1495 -f 2223/2116/1496 1550/2117/1497 1500/2001/1381 -f 1566/2064/1444 2417/2118/1498 1558/2119/1499 -f 2265/2120/1500 1555/2121/1501 1499/2004/1384 -f 2226/2122/1502 2430/2050/1430 1551/2052/1432 -f 1549/2115/1495 1564/2123/1503 1561/2111/1491 -f 2666/167/143 1547/2124/1504 1486/1999/1379 -f 1544/2125/1505 2668/344/320 1541/2126/1506 -f 1543/2127/1507 2713/316/292 2670/345/321 -f 1526/2085/1465 1497/1994/1374 1496/1990/1370 -f 1486/1999/1379 1523/2128/1508 1485/1997/1377 -f 1533/2129/1509 1544/2125/1505 1541/2126/1506 -f 1535/2130/1510 2427/2131/1511 1543/2127/1507 -f 1529/2132/1512 1540/2133/1513 1537/2087/1467 -f 2411/2036/1416 1539/2088/1468 1531/2037/1417 -f 1528/2134/1514 1533/2129/1509 1525/2135/1515 -f 2425/2136/1516 1535/2130/1510 1527/2033/1413 -f 1521/2048/1428 1517/2137/1517 1524/2049/1429 -f 1523/2128/1508 1484/1984/1364 1485/1997/1377 -f 1516/2082/1462 1512/2138/1518 1509/2139/1519 -f 1515/2140/1520 1495/1986/1366 1494/1980/1360 -f 2409/2042/1422 1519/2035/1415 1522/2043/1423 -f 1517/2137/1517 1532/2141/1521 1529/2132/1512 -f 2424/2039/1419 1511/2034/1414 1514/2040/1420 -f 1512/2138/1518 1525/2135/1515 1509/2139/1519 -f 1608/2080/1460 1538/2046/1426 1537/2087/1467 -f 1606/2078/1458 1540/2133/1513 1539/2088/1468 -f 1515/2140/1520 1601/2083/1463 1516/2082/1462 -f 1514/2040/1420 1604/2081/1461 1603/2038/1418 -f 1599/2142/1522 1608/2080/1460 1600/2076/1456 -f 1597/2143/1523 1606/2078/1458 1598/2075/1455 -f 1601/2083/1463 1594/2101/1481 1593/2093/1473 -f 1603/2038/1418 1596/2092/1472 1595/2095/1475 -f 1591/2096/1476 1600/2076/1456 1592/2074/1454 -f 1590/2072/1452 1597/2143/1523 1598/2075/1455 -f 1594/2101/1481 1585/2098/1478 1593/2093/1473 -f 1596/2092/1472 1587/2100/1480 1595/2095/1475 -f 1583/2102/1482 1592/2074/1454 1584/2070/1450 -f 1581/2069/1449 1590/2072/1452 1582/2067/1447 -f 1586/2144/1524 1577/2103/1483 1585/2098/1478 -f 1587/2100/1480 1580/2145/1525 1579/2104/1484 -f 1575/2146/1526 1584/2070/1450 1576/2066/1446 -f 1573/2065/1445 1582/2067/1447 1574/2062/1442 -f 1577/2103/1483 1570/2112/1492 1569/2107/1487 -f 1580/2145/1525 1571/2109/1489 1579/2104/1484 -f 1568/2059/1439 1575/2146/1526 1576/2066/1446 -f 1566/2064/1444 1573/2065/1445 1574/2062/1442 -f 1570/2112/1492 1561/2111/1491 1569/2107/1487 -f 1572/2106/1486 1563/2051/1431 1571/2109/1489 -f 1560/2061/1441 1567/2110/1490 1568/2059/1439 -f 1558/2119/1499 1565/2147/1527 1566/2064/1444 -f 1562/2086/1466 1549/2115/1495 1561/2111/1491 -f 1563/2051/1431 1552/2114/1494 1551/2052/1432 -f 2267/2148/1528 1560/2061/1441 2266/2053/1433 -f 2269/2149/1529 1558/2119/1499 2268/2056/1436 -f 2225/2150/1530 1556/2151/1435 2224/2113/1493 -f 2227/2152/1531 1554/2153/1438 2226/2122/1502 -f 1547/2124/1504 2675/223/199 1548/2047/1427 -f 1546/2041/1421 2672/222/198 2673/221/197 -f 2669/260/236 1541/2126/1506 2668/344/320 -f 2671/313/289 1543/2127/1507 2670/345/321 -f 1523/2128/1508 1548/2047/1427 1524/2049/1429 -f 1521/2048/1428 1546/2041/1421 1522/2043/1423 -f 1542/2154/1532 1533/2129/1509 1541/2126/1506 -f 1543/2127/1507 1536/2155/1533 1535/2130/1510 -f 1537/2087/1467 1530/2044/1424 1529/2132/1512 -f 1539/2088/1468 1532/2141/1521 1531/2037/1417 -f 1534/2045/1425 1525/2135/1515 1533/2129/1509 -f 1536/2155/1533 1527/2033/1413 1535/2130/1510 -f 1529/2132/1512 1518/2089/1469 1517/2137/1517 -f 1532/2141/1521 1519/2035/1415 1531/2037/1417 -f 1525/2135/1515 1510/2156/1534 1509/2139/1519 -f 1527/2033/1413 1512/2138/1518 1511/2034/1414 -f 1517/2137/1517 1523/2128/1508 1524/2049/1429 -f 1519/2035/1415 1521/2048/1428 1522/2043/1423 -f 1509/2139/1519 1515/2140/1520 1516/2082/1462 -f 1512/2138/1518 1514/2040/1420 1511/2034/1414 -f 1853/2157/1535 1610/1968/1348 1842/2158/1536 -f 1852/2159/1537 1630/1964/1344 1853/2157/1535 -f 1851/2160/1538 1628/1960/1340 1852/2159/1537 -f 1850/2161/1539 1626/1956/1336 1851/2160/1538 -f 1849/2162/1540 1624/1952/1332 1850/2161/1539 -f 1848/2163/1541 1622/1946/1326 1849/2162/1540 -f 1847/2164/1542 1620/1947/1327 1848/2163/1541 -f 1892/1909/15 1839/2165/1324 1893/1942/15 -f 1820/2166/1543 1915/2167/1544 1908/2168/1545 -f 1846/2169/1546 2676/91/69 2695/689/631 -f 1845/2170/1547 1613/1926/1308 1846/2169/1546 -f 1844/2171/1548 1612/1923/1305 1845/2170/1547 -f 1843/2172/1549 1611/1924/1306 1844/2171/1548 -f 1842/2158/1536 1609/1974/1354 1843/2172/1549 -f 1682/2173/1550 1694/2174/1551 1697/2175/1552 -f 1462/2176/1553 1695/2177/1554 1684/1929/1311 -f 1693/1938/1320 1649/2178/1555 1646/2179/1556 -f 1615/2180/1557 1647/2181/1558 1614/1931/1313 -f 2665/372/347 1691/2182/1559 2682/373/348 -f 1697/2175/1552 1653/2183/1560 1650/2184/1561 -f 1617/1976/1356 1651/2185/1562 1616/1977/1357 -f 1681/2186/1563 1689/2187/1564 1678/2188/1565 -f 1481/2189/1566 1687/2190/1567 1680/2191/1568 -f 1631/1979/1359 1720/2192/1569 1629/2193/1570 -f 1677/2194/1571 1678/2188/1565 1674/2195/1572 -f 1480/2196/1573 1680/2191/1568 1676/2197/1574 -f 1723/1936/1318 1470/2198/1575 1719/2199/1576 -f 1629/2193/1570 1716/2200/1577 1627/2201/1578 -f 1673/2202/1579 1674/2195/1572 1670/2203/1580 -f 1479/2204/1581 1676/2197/1574 1672/2205/1582 -f 1719/2199/1576 1469/2206/1583 1715/2207/1584 -f 1627/2201/1578 1712/2208/1585 1625/2209/1586 -f 1669/2210/1587 1670/2203/1580 1666/2211/1588 -f 1478/2212/1589 1672/2205/1582 1668/2213/1590 -f 1715/2207/1584 1468/2214/1591 1711/2215/1592 -f 1625/2209/1586 1708/2216/1593 1623/2217/1594 -f 1665/2218/1595 1666/2211/1588 1662/2219/1596 -f 1477/2220/1597 1668/2213/1590 1664/2221/1598 -f 1711/2215/1592 1467/2222/1599 1707/2223/1600 -f 1623/2217/1594 1704/2224/1601 1621/2225/1602 -f 1661/2226/1603 1662/2219/1596 1658/2227/1604 -f 1476/2228/1605 1664/2221/1598 1660/1940/1322 -f 1707/2223/1600 1466/2229/1606 1703/2230/1607 -f 1621/2225/1602 1700/2231/1608 1619/2232/1609 -f 2221/2233/1610 1899/2234/1611 2228/2235/1612 -f 1919/2236/15 1807/2237/1613 1895/1907/15 -f 1703/2230/1607 1465/2238/1614 1699/2239/1615 -f 1812/2240/1616 1907/2241/1617 1896/2242/1618 -f 1833/2243/1619 1901/2244/1273 1904/2245/1273 -f 1657/2246/1620 1658/2227/1604 1654/2247/1621 -f 1897/2248/1622 1822/2249/1623 1913/2250/1624 -f 2677/442/414 1692/2251/1625 1615/2180/1557 -f 1695/2177/1554 1460/2252/1626 1652/1934/1316 -f 1650/2184/1561 1722/2253/1627 1725/1969/1349 -f 1645/2254/1628 2678/446/417 1643/2255/1629 -f 1464/2256/1630 1648/1930/1312 1691/2182/1559 -f 1646/2179/1556 1685/2257/1631 1682/2173/1550 -f 1642/2258/1632 1643/2255/1629 1640/2259/1633 -f 2393/2260/1634 2388/2261/1635 2405/2262/1636 -f 1639/2263/1637 1640/2259/1633 1637/2264/1638 -f 2392/2265/1639 2707/459/430 2709/1471/1051 -f 1686/2266/1640 1633/2267/1641 1689/2187/1564 -f 1688/2268/1642 1609/1974/1354 1610/1968/1348 -f 1472/2269/1643 1635/2270/1644 1687/2190/1567 -f 1636/2271/1645 1637/2264/1638 1633/2267/1641 -f 1697/2175/1552 1683/1932/1314 1682/2173/1550 -f 1694/2174/1551 2333/2272/1646 2332/2273/1647 -f 1682/2173/1550 1647/2181/1558 1646/2179/1556 -f 1685/2257/1631 2334/2274/1648 2333/2272/1646 -f 1725/1969/1349 1651/2185/1562 1650/2184/1561 -f 2335/2275/1649 1653/2183/1560 2336/2276/1650 -f 1688/2268/1642 1678/2188/1565 1689/2187/1564 -f 1686/2266/1640 2338/2277/1651 2337/2278/1652 -f 1721/1965/1345 1724/1978/1358 1725/1969/1349 -f 2339/2279/1653 1722/2253/1627 2335/2275/1649 -f 1679/1967/1347 1674/2195/1572 1678/2188/1565 -f 1681/2186/1563 2340/2280/1654 2338/2277/1651 -f 1717/1961/1341 1720/2192/1569 1721/1965/1345 -f 2341/2281/1655 1718/1970/1350 2339/2279/1653 -f 1675/1963/1343 1670/2203/1580 1674/2195/1572 -f 1677/2194/1571 2342/2282/1656 2340/2280/1654 -f 1713/1957/1337 1716/2200/1577 1717/1961/1341 -f 2343/2283/1657 1714/1966/1346 2341/2281/1655 -f 1671/1959/1339 1666/2211/1588 1670/2203/1580 -f 1673/2202/1579 2344/2284/1658 2342/2282/1656 -f 1709/1953/1333 1712/2208/1585 1713/1957/1337 -f 2345/2285/1659 1710/1962/1342 2343/2283/1657 -f 1667/1955/1335 1662/2219/1596 1666/2211/1588 -f 1669/2210/1587 2346/2286/1660 2344/2284/1658 -f 1705/1948/1328 1708/2216/1593 1709/1953/1333 -f 2347/2287/1661 1706/1958/1338 2345/2285/1659 -f 1663/1951/1331 1658/2227/1604 1662/2219/1596 -f 1665/2218/1595 2348/2288/1662 2346/2286/1660 -f 1701/1950/1330 1704/2224/1601 1705/1948/1328 -f 2349/2289/1663 1702/1954/1334 2347/2287/1661 -f 1659/1945/1325 1654/2247/1621 1658/2227/1604 -f 1661/2226/1603 2350/2290/1664 2348/2288/1662 -f 1830/2291/1665 1898/1868/1273 1906/2292/1273 -f 1832/2293/1665 1905/2294/1273 1901/2244/1273 -f 1693/1938/1320 2683/443/80 2684/102/80 -f 1690/1937/1319 2702/490/458 2351/2295/1666 -f 1650/2184/1561 1696/1975/1355 1697/2175/1552 -f 1653/2183/1560 2332/2273/1647 2336/2276/1650 -f 2679/493/417 1643/2255/1629 2678/446/417 -f 2680/495/462 2352/2296/1667 2703/496/463 -f 1646/2179/1556 1692/2251/1625 1693/1938/1320 -f 1649/2178/1555 2351/2295/1666 2334/2274/1648 -f 1644/1927/1309 1640/2259/1633 1643/2255/1629 -f 1645/2254/1628 2353/2297/1668 2352/2296/1667 -f 1641/1925/1307 1637/2264/1638 1640/2259/1633 -f 2353/2297/1668 1639/2263/1637 2354/2298/1669 -f 1638/1922/1304 1633/2267/1641 1637/2264/1638 -f 2354/2298/1669 1636/2271/1645 2355/2299/1670 -f 1634/1973/1353 1689/2187/1564 1633/2267/1641 -f 2355/2299/1670 1686/2266/1640 2337/2278/1652 -f 1439/1886/1280 2687/500/467 2663/1887/1281 -f 1766/2300/1671 1773/2301/1672 1770/1921/1303 -f 1768/2302/1673 1452/2303/1674 1772/1916/1298 -f 1438/1893/1284 1771/2304/1675 1439/1886/1280 -f 1762/2305/1676 1769/2306/1677 1766/2300/1671 -f 1764/2307/1678 1451/2308/1679 1768/2302/1673 -f 1902/1848/1259 1814/2309/1680 1903/2310/1681 -f 1758/2311/1682 1765/2312/1683 1762/2305/1676 -f 1760/2313/1684 1450/2314/1685 1764/2307/1678 -f 1754/2315/1686 1761/2316/1687 1758/2311/1682 -f 1756/2317/1688 1449/2318/1689 1760/2313/1684 -f 1436/1901/1288 1763/2319/1690 1437/1892/1283 -f 1444/1902/1289 1747/2320/1691 1445/1884/1279 -f 1750/2321/1692 1757/2322/1693 1754/2315/1686 -f 1752/2323/1694 1448/2324/1695 1756/2317/1688 -f 1746/2325/1696 1753/2326/1697 1750/2321/1692 -f 1748/2327/1698 1459/2328/1699 1752/2323/1694 -f 1742/2329/1700 1749/2330/1701 1746/2325/1696 -f 1744/2331/1702 1458/2332/1703 1748/2327/1698 -f 1738/2333/1704 1745/2334/1705 1742/2329/1700 -f 1740/2335/1706 1457/2336/1707 1744/2331/1702 -f 1443/1889/1282 1743/2337/1708 1444/1902/1289 -f 1734/2338/1709 1741/2339/1710 1738/2333/1704 -f 1736/2340/1711 1456/2341/1712 1740/2335/1706 -f 1442/1904/1290 1739/2342/1713 1443/1889/1282 -f 1730/2343/1714 1737/2344/1715 1734/2338/1709 -f 1732/1854/1265 1455/2345/1716 1736/2340/1711 -f 1441/1895/1285 1735/2346/1717 1442/1904/1290 -f 1809/2347/1718 1904/2245/1273 1912/2348/1719 -f 1831/2349/1665 1906/2292/1273 1905/2294/1273 -f 2356/2350/1720 1908/2168/1545 2358/2351/1721 -f 1726/2352/1722 1733/2353/1723 1730/2343/1714 -f 2688/554/467 1771/2304/1675 1770/1921/1303 -f 2686/555/15 1773/2301/1672 1772/1916/1298 -f 1770/1921/1303 1767/1917/1299 1766/2300/1671 -f 1772/1916/1298 1769/2306/1677 1768/2302/1673 -f 1766/2300/1671 1763/2319/1690 1762/2305/1676 -f 1768/2302/1673 1765/2312/1683 1764/2307/1678 -f 1909/2354/15 1811/2355/1724 1910/2356/632 -f 1855/2357/1725 1912/2348/1719 1917/2358/1726 -f 1762/2305/1676 1759/1915/1297 1758/2311/1682 -f 1764/2307/1678 1761/2316/1687 1760/2313/1684 -f 1758/2311/1682 1755/1914/1296 1754/2315/1686 -f 1760/2313/1684 1757/2322/1693 1756/2317/1688 -f 1754/2315/1686 1751/1913/1295 1750/2321/1692 -f 1756/2317/1688 1753/2326/1697 1752/2323/1694 -f 1750/2321/1692 1747/2320/1691 1746/2325/1696 -f 1752/2323/1694 1749/2330/1701 1748/2327/1698 -f 1746/2325/1696 1743/2337/1708 1742/2329/1700 -f 1748/2327/1698 1745/2334/1705 1744/2331/1702 -f 1742/2329/1700 1739/2342/1713 1738/2333/1704 -f 1744/2331/1702 1741/2339/1710 1740/2335/1706 -f 1738/2333/1704 1735/2346/1717 1734/2338/1709 -f 1740/2335/1706 1737/2344/1715 1736/2340/1711 -f 1734/2338/1709 1731/2359/1727 1730/2343/1714 -f 1736/2340/1711 1733/2353/1723 1732/1854/1265 -f 1730/2343/1714 1727/2360/1728 1726/2352/1722 -f 1732/1854/1265 1729/2361/1729 1728/1852/1263 -f 1913/2250/1624 1825/2362/1730 1914/2363/1731 -f 1819/2364/1732 1916/1920/1302 1915/2167/1544 -f 1440/2365/1733 1731/2359/1727 1441/1895/1285 -f 1779/2366/1734 2599/2367/1735 2596/2368/1736 -f 1780/2369/1737 2596/2368/1736 2600/2370/1738 -f 1781/2371/1739 2600/2370/1738 2602/2372/1740 -f 1782/2373/1741 2602/2372/1740 2604/2374/1742 -f 2689/2375/538 2604/2374/1742 2606/2376/1743 -f 2263/2377/1744 2611/2378/1745 2661/2379/1746 -f 2612/2380/1747 1784/2381/1748 2608/2382/1749 -f 2614/2383/1750 1785/2384/1751 2612/2380/1747 -f 2616/2385/1752 1786/2386/1753 2614/2383/1750 -f 2618/2387/1754 1787/2388/1755 2616/2385/1752 -f 2620/2389/1756 1788/2390/1757 2618/2387/1754 -f 2622/2391/1758 1789/2392/1759 2620/2389/1756 -f 2599/2367/1735 1790/2393/1760 2622/2391/1758 -f 2624/2394/1761 1792/2395/1762 2627/2396/1763 -f 2627/2396/1763 1793/2397/1764 2629/2398/1765 -f 2629/2398/1765 1794/2399/1766 2631/2400/1767 -f 2631/2400/1767 1795/2401/1768 2633/2402/1769 -f 2633/2402/1769 2691/2403/567 2635/2404/1770 -f 2221/2405/1610 2637/2406/1771 2659/2407/1772 -f 1796/2408/1773 2639/2409/1774 2637/2406/1771 -f 1797/2410/1775 2641/2411/1776 2639/2409/1774 -f 1798/2412/1777 2643/2413/1778 2641/2411/1776 -f 1799/2414/1779 2645/2415/1780 2643/2413/1778 -f 1800/2416/1781 2647/2417/1782 2645/2415/1780 -f 1801/2418/1783 2649/2419/1784 2647/2417/1782 -f 1802/2420/1785 2624/2394/1761 2649/2419/1784 -f 2635/2404/1770 2690/2421/584 2651/2422/1786 -f 2692/2423/585 2606/2376/1743 2652/2424/1787 -f 2693/2425/587 2652/2424/1787 2654/2426/1788 -f 2656/2427/1789 2693/2425/587 2654/2426/1788 -f 2651/2422/1786 2694/2428/590 2656/2429/1789 -f 1886/2430/1790 2271/2431/1791 2280/2432/1792 -f 2272/2433/1793 1803/2434/1794 2271/2431/1791 -f 2230/2435/1795 1887/2436/1796 2239/2437/1797 -f 1803/2434/1794 2231/2438/1798 2230/2435/1795 -f 2277/2439/1799 1810/2440/1800 1837/2441/1801 -f 2278/2442/1802 1835/2443/1803 2275/2444/1802 -f 1823/2445/1804 1984/2446/1805 1822/2249/1623 -f 1978/2447/1806 1855/2357/1725 1816/2448/1807 -f 2244/2449/1808 1813/2450/1809 2233/1843/1254 -f 1822/2249/1623 1987/2451/1810 1825/2362/1730 -f 2360/2452/1811 1820/2166/1543 2356/2350/1720 -f 2274/2453/1812 1975/2454/1813 1812/2455/1616 -f 1981/2456/1814 1818/1918/1300 1819/2364/1732 -f 1980/2457/1815 1816/2448/1807 1818/1918/1300 -f 1817/1911/1293 1985/2458/1816 1823/2445/1804 -f 1982/2459/1817 1819/2364/1732 1820/2166/1543 -f 1975/2460/1813 1821/2461/1818 1812/2240/1616 -f 2287/2462/1819 1854/2463/1820 2279/2464/1821 -f 2276/2465/1802 1806/2466/1822 2272/2433/1793 -f 2237/2467/1823 1838/2468/1324 2234/2469/1823 -f 2235/2470/1823 1808/2471/1291 2231/2438/1798 -f 2232/2472/1824 1840/2473/1825 2236/2474/1826 -f 2275/2444/1802 1830/2475/1665 1831/2476/1665 -f 2277/2439/1799 1832/2477/1665 1833/2478/1619 -f 2234/2469/1823 1834/2479/1803 1835/2443/1803 -f 2236/2474/1826 1836/2480/1803 1837/2441/1801 -f 1890/1912/1294 1823/2445/1804 1897/2248/1622 -f 1891/1944/15 1841/2481/1324 1888/2482/15 -f 1888/2482/15 1840/2483/1825 1909/2354/15 -f 2282/2484/1827 1812/2455/1616 1896/2485/1618 -f 2238/2486/1828 1811/2487/1724 2232/2472/1824 -f 2279/2488/1821 1810/2440/1800 2273/2489/1829 -f 1816/2448/1807 1917/2358/1726 1911/1919/1301 -f 1448/2324/1695 1843/2172/1549 1449/2318/1689 -f 1449/2318/1689 1844/2171/1548 1450/2314/1685 -f 1450/2314/1685 1845/2170/1547 1451/2308/1679 -f 1451/2308/1679 1846/2169/1546 1452/2303/1674 -f 1452/2303/1674 2695/689/631 2664/76/55 -f 1453/2490/1830 1848/2163/1541 1454/1853/1264 -f 1454/1853/1264 1849/2162/1540 1455/2345/1716 -f 1455/2345/1716 1850/2161/1539 1456/2341/1712 -f 1456/2341/1712 1851/2160/1538 1457/2336/1707 -f 1457/2336/1707 1852/2159/1537 1458/2332/1703 -f 1458/2332/1703 1853/2157/1535 1459/2328/1699 -f 1459/2328/1699 1842/2158/1536 1448/2324/1695 -f 1910/2356/632 1856/2491/1831 1918/1910/1292 -f 2239/2437/1797 1968/2492/1832 2243/2493/1833 -f 1967/2494/1834 2280/2432/1792 2285/2495/1835 -f 1968/2496/1832 1919/2236/15 1973/2497/1836 -f 1804/2498/1837 1920/2499/1838 1894/1867/1273 -f 2011/2500/1839 1447/2501/1840 1777/2502/1841 -f 2047/2503/1842 1932/2504/1843 1955/2505/1844 -f 2018/2506/1845 1427/2507/1846 1429/2508/1847 -f 2031/2509/1848 1406/2510/1849 1405/1850/1261 -f 1431/2511/1850 2018/2506/1845 1429/2508/1847 -f 2030/2512/1851 1407/2513/1852 1406/2510/1849 -f 2009/2514/1853 1776/2515/1854 1775/2516/1855 -f 1433/2517/1856 2017/2518/1857 1431/2511/1850 -f 2029/2519/1858 1408/2520/1859 1407/2513/1852 -f 2016/2521/1860 1433/2517/1856 1410/2522/1861 -f 2028/2523/1862 1397/2524/1863 1408/2520/1859 -f 1412/2525/1864 2016/2521/1860 1410/2522/1861 -f 1880/1881/13 1971/2526/15 1954/2527/13 -f 1879/1879/16 1954/2527/13 1953/2528/16 -f 1878/1877/18 1953/2528/16 1952/2529/18 -f 1877/1875/1278 1952/2529/18 1951/2530/1278 -f 1876/1873/1277 1951/2530/1278 1950/2531/1277 -f 1875/1870/1275 1950/2531/1277 1949/2532/1275 -f 1874/1871/1276 1949/2532/1275 1948/2533/1865 -f 1873/1863/1270 2699/2534/15 1947/2535/1270 -f 1872/1861/30 1947/2535/1270 1946/2536/30 -f 1871/1859/31 1946/2536/30 1945/2537/31 -f 1870/1856/32 1945/2537/31 1944/2538/32 -f 1869/1857/15 1944/2538/32 1971/2526/15 -f 2035/2539/1866 1409/2540/1867 1401/2541/1868 -f 2007/2542/1869 1398/2543/1870 1397/2524/1863 -f 2013/2544/1871 1774/2545/1872 1409/2540/1867 -f 2026/2546/1873 1412/2525/1864 1414/2547/1874 -f 2008/2548/1875 1399/2549/1876 1398/2543/1870 -f 2012/2550/1877 1775/2516/1855 1774/2545/1872 -f 1416/2551/1878 2026/2546/1873 1414/2547/1874 -f 2037/2552/1879 1400/2553/1880 1399/2549/1876 -f 2024/2554/1881 1416/2551/1878 1418/2555/1882 -f 2036/2556/1883 1401/2541/1868 1400/2553/1880 -f 2010/2557/1884 1777/2502/1841 1776/2558/1854 -f 1447/2501/1840 2024/2554/1881 1418/2555/1882 -f 2242/2559/1885 1420/2560/1886 2229/2561/1887 -f 1931/2562/715 1857/2563/694 1868/2564/714 -f 1930/2565/713 1868/2564/714 1867/2566/712 -f 1930/2565/713 1866/2567/1888 1929/2568/711 -f 1929/2568/711 1865/2569/1889 1928/2570/1890 -f 1928/2570/1890 1864/2571/1891 1927/2572/1892 -f 1927/2572/1892 1863/2573/1893 1926/2574/1894 -f 1926/2574/1894 1862/2575/1895 1925/2576/1896 -f 2698/2577/695 1861/2578/1897 1924/2579/1898 -f 1924/2579/1898 1860/2580/698 1923/2581/699 -f 1923/2581/699 1859/2582/696 1922/2583/697 -f 1922/2583/697 1858/2584/1016 1921/2585/693 -f 1921/2585/693 1857/2563/694 1969/2586/695 -f 2156/2587/1899 1919/2236/15 2152/2588/1900 -f 2148/2589/717 1918/1910/1292 2151/2590/1292 -f 2300/2591/1901 1896/2485/1618 2132/2592/1902 -f 2140/2593/15 1909/2354/15 2136/2594/15 -f 2143/2595/15 1888/2482/15 2140/2593/15 -f 2142/2596/1903 1897/2248/1622 2133/2597/1622 -f 1915/2167/1544 2150/2598/1302 2139/2599/1544 -f 2138/2600/1624 1914/2363/1731 2149/2601/1904 -f 2136/2594/15 1910/2356/632 2148/2589/717 -f 2358/2351/1721 2147/2602/1905 2366/2603/1906 -f 2134/2604/1907 1903/2310/1681 2146/2605/1908 -f 2285/2606/1835 1900/2607/1909 2281/2608/1910 -f 2258/2609/727 1973/2610/1836 2156/2611/1899 -f 2133/2597/1622 1913/2250/1624 2138/2600/1624 -f 1896/2242/1618 2135/2612/1911 2132/2613/1902 -f 2152/2588/1900 1895/1907/15 2145/2614/1912 -f 2283/2615/1913 2209/2616/732 2304/2617/734 -f 1908/2168/1545 2139/2599/1544 2147/2602/1905 -f 2131/2618/15 1893/1942/15 2144/2619/15 -f 2144/2619/15 1891/1944/15 2143/2595/15 -f 1916/1920/1302 2137/2620/1914 2150/2598/1302 -f 2151/2590/1292 1890/1912/1294 2142/2596/1903 -f 1895/1907/15 2131/2618/15 2145/2614/1912 -f 2365/2621/1915 1902/1848/1259 2134/2604/1907 -f 2241/1845/1256 2141/2622/1916 2257/2623/1917 -f 1920/2499/1838 2155/2624/732 2153/2625/740 -f 2240/2626/1918 1968/2627/1832 1973/2610/1836 -f 1779/2628/1734 1969/2586/695 1778/2629/1919 -f 1780/2630/1737 1921/2585/693 1779/2628/1734 -f 1781/2631/1739 1922/2583/697 1780/2630/1737 -f 1782/2632/1741 1923/2581/699 1781/2631/1739 -f 2689/2633/538 1924/2579/1898 1782/2632/1741 -f 1785/2634/1751 1925/2576/1896 1784/2635/1748 -f 1786/2636/1753 1926/2574/1894 1785/2634/1751 -f 1787/2637/1755 1927/2572/1892 1786/2636/1753 -f 1788/2638/1757 1928/2570/1890 1787/2637/1755 -f 1789/2639/1759 1929/2568/711 1788/2638/1757 -f 1789/2639/1759 1931/2562/715 1930/2565/713 -f 1778/2629/1919 1931/2562/715 1790/2640/1760 -f 1971/2526/15 1792/2641/1762 1791/2642/559 -f 1944/2538/32 1793/2643/1764 1792/2641/1762 -f 1945/2537/31 1794/2644/1766 1793/2643/1764 -f 1946/2536/30 1795/2645/1768 1794/2644/1766 -f 1795/2645/1768 2699/2534/15 2691/2646/567 -f 1948/2533/1865 1797/2647/1775 1796/2648/1773 -f 1949/2532/1275 1798/2649/1777 1797/2647/1775 -f 1950/2531/1277 1799/2650/1779 1798/2649/1777 -f 1951/2530/1278 1800/2651/1781 1799/2650/1779 -f 1952/2529/18 1801/2652/1783 1800/2651/1781 -f 1953/2528/16 1802/2653/1785 1801/2652/1783 -f 1954/2527/13 1791/2642/559 1802/2653/1785 -f 1427/2507/1846 2020/2654/1920 1425/2655/1921 -f 2033/2656/1922 1404/1851/1262 1403/2657/1923 -f 2020/2654/1920 1423/2658/1924 1425/2655/1921 -f 2034/2659/1925 1403/2657/1923 1402/2660/1926 -f 1423/2658/1924 2021/2661/1927 1421/2662/1928 -f 2284/2663/1929 1402/2660/1926 2270/2664/1930 -f 1784/2635/1748 2283/2665/1913 2263/2666/1744 -f 1920/2499/1838 1967/2667/1834 1974/2668/1931 -f 1985/2458/1816 1996/2669/1932 1984/2446/1805 -f 1815/2670/1933 1989/2671/1934 1978/2447/1806 -f 1984/2446/1805 1999/2672/1935 1987/2451/1810 -f 2362/2673/1936 1982/2459/1817 2360/2452/1811 -f 1993/2674/1937 1980/2457/1815 1981/2456/1814 -f 1992/2675/1938 1978/2447/1806 1980/2457/1815 -f 1979/2676/1939 1997/2677/1940 1985/2458/1816 -f 1994/2678/1941 1981/2456/1814 1982/2459/1817 -f 1829/2679/1942 1983/2680/1943 1975/2460/1813 -f 1990/2681/1944 1991/2682/1945 1979/2676/1939 -f 1986/2683/1946 1827/2684/1947 1977/2685/1948 -f 2294/2686/1949 1988/2687/1950 2287/2462/1819 -f 2357/2688/1951 1986/2683/1946 1824/1847/1258 -f 2238/2689/1828 1990/2690/1944 1856/2691/1831 -f 1824/1847/1258 1977/2685/1948 1814/2309/1680 -f 1856/2491/1831 1979/2676/1939 1817/1911/1293 -f 2293/2692/1952 2001/2693/1953 2290/2694/1954 -f 2289/2695/1955 2004/2696/1956 2294/2697/1949 -f 2252/2698/1957 1991/2699/1945 2006/2700/1958 -f 2251/2701/1959 1996/2702/1932 2248/2703/1960 -f 2249/2704/1961 1991/2699/1945 2247/2705/1962 -f 2291/2706/1963 1826/2707/1964 2289/2695/1955 -f 2246/2708/1965 1998/2709/1966 2250/2710/1967 -f 2288/2711/1968 2003/2712/1969 2292/2713/1970 -f 2290/2694/1954 1992/2714/1938 1993/2715/1937 -f 2293/2692/1952 2362/2716/1936 2372/2717/1971 -f 2249/2704/1961 2001/2693/1953 2248/2703/1960 -f 2371/2718/1972 2002/2719/1973 2364/2720/1974 -f 2288/2711/1968 1975/2454/1813 2286/2721/1975 -f 2245/2722/1976 2006/2723/1958 1990/2690/1944 -f 2361/2724/1977 1998/2725/1966 1986/2683/1946 -f 2246/2708/1965 1976/2726/1978 2244/2449/1808 -f 2069/2727/1979 2007/2728/1869 2072/2729/1980 -f 2010/2730/1884 2076/2731/1981 2073/2732/1982 -f 2011/2733/1839 2073/2734/1982 2077/2735/1983 -f 2009/2736/1853 2080/2737/1984 2076/2731/1981 -f 2012/2738/1877 2082/2739/1985 2080/2737/1984 -f 2014/2740/1986 2077/2735/1983 2083/2741/1987 -f 2085/2742/1988 2016/2743/1860 2088/2744/1989 -f 2017/2745/1857 2085/2742/1988 2089/2746/1990 -f 2018/2747/1845 2089/2746/1990 2091/2748/1991 -f 2093/2749/1992 2018/2747/1845 2091/2748/1991 -f 2095/2750/1993 2019/2751/1994 2093/2749/1992 -f 2097/2752/1995 2022/2753/1996 2100/2754/1997 -f 2242/2755/1885 2097/2752/1995 2256/2756/1998 -f 2024/2757/1881 2083/2741/1987 2103/2758/1999 -f 2025/2759/2000 2103/2758/1999 2105/2760/2001 -f 2026/2761/1873 2105/2760/2001 2107/2762/2002 -f 2027/2763/2003 2107/2762/2002 2109/2764/2004 -f 2016/2743/1860 2109/2764/2004 2088/2744/1989 -f 2072/2729/1980 2028/2765/1862 2112/2766/2005 -f 2028/2765/1862 2114/2767/2006 2112/2766/2005 -f 2114/2767/2006 2030/2768/1851 2116/2769/2007 -f 2116/2769/2007 2031/2770/1848 2118/2771/2008 -f 2031/2770/1848 2120/2772/2009 2118/2771/2008 -f 2022/2753/1996 2095/2750/1993 2100/2754/1997 -f 2032/2773/1260 2122/2774/2010 2120/2772/2009 -f 2033/2775/1922 2124/2776/2011 2122/2774/2010 -f 2284/2777/1929 2101/2778/2012 2298/2779/2013 -f 2013/2780/1871 2126/2781/2014 2082/2739/1985 -f 2126/2781/2014 2036/2782/1883 2128/2783/2015 -f 2128/2783/2015 2037/2784/1879 2130/2785/2016 -f 2037/2784/1879 2069/2727/1979 2130/2785/2016 -f 2045/2786/2017 2041/2787/2018 2296/2788/2019 -f 2061/2789/2020 1957/2790/2021 1958/2791/2022 -f 2046/2792/2023 1933/2793/2024 1932/2504/1843 -f 2062/2794/2025 1958/2791/2022 1959/2795/2026 -f 2048/2796/2027 1934/2797/2028 1933/2793/2024 -f 2063/2798/2029 1959/2795/2026 1960/2799/2030 -f 1934/2797/2028 2050/2800/2031 1935/2801/2032 -f 2051/2802/2033 1937/2803/2034 1936/2804/2035 -f 2050/2800/2031 1936/2804/2035 1935/2801/2032 -f 2064/2805/2036 1960/2799/2030 1961/2806/2037 -f 2053/2807/2038 1938/2808/2039 1937/2803/2034 -f 2065/2809/2040 1961/2806/2037 1962/2810/2041 -f 2254/2811/2042 1963/2812/2043 2253/2813/2044 -f 2296/2814/2019 1962/2810/2041 2295/2815/2045 -f 2045/2816/2017 1940/2817/2046 1939/2818/2047 -f 2038/2819/2048 1507/2820/2049 1508/2821/2050 -f 2066/2822/2051 1964/2823/2052 1965/2824/2053 -f 1940/2817/2046 2056/2825/2054 1941/2826/2055 -f 2040/2827/2056 1881/2828/2057 1882/2829/2058 -f 2067/2830/2059 1965/2824/2053 1970/2831/2060 -f 2056/2825/2054 1942/2832/2061 1941/2826/2055 -f 2041/2833/2018 1884/2834/2062 1881/2835/2057 -f 2068/2836/2063 1970/2831/2060 1972/2837/2064 -f 2057/2838/2065 1943/2839/2066 1942/2832/2061 -f 1883/2840/2067 2040/2827/2056 1882/2829/2058 -f 1507/2820/2049 2068/2836/2063 1972/2837/2064 -f 2058/2841/2068 1955/2505/1844 1943/2839/2066 -f 2044/2842/2069 1883/2840/2067 1964/2823/2052 -f 2059/2843/2070 1508/2821/2050 1956/2844/2071 -f 2042/2845/2072 1939/2818/2047 1884/2834/2062 -f 2060/2846/2073 1956/2844/2071 1957/2790/2021 -f 2129/2847/2074 1507/2848/2049 1972/2849/2064 -f 2129/2847/2074 2069/2727/1979 2070/2850/2075 -f 2127/2851/2076 1972/2849/2064 1970/2852/2060 -f 2128/2783/2015 2129/2847/2074 2127/2851/2076 -f 1965/2853/2053 2127/2851/2076 1970/2852/2060 -f 2126/2781/2014 2127/2851/2076 2125/2854/2077 -f 2081/2855/2078 1965/2853/2053 1964/2856/2052 -f 2081/2855/2078 2126/2781/2014 2125/2854/2077 -f 2297/2857/2079 1963/2858/2043 2295/2859/2045 -f 2298/2779/2013 2102/2860/2080 2297/2857/2079 -f 2121/2861/2081 1962/2862/2041 1961/2863/2037 -f 2121/2861/2081 2124/2776/2011 2123/2864/2082 -f 2119/2865/2083 1961/2863/2037 1960/2866/2030 -f 2119/2865/2083 2122/2774/2010 2121/2861/2081 -f 2099/2867/2084 1936/2868/2035 1937/2869/2034 -f 2100/2754/1997 2096/2870/2085 2099/2867/2084 -f 1959/2871/2026 2119/2865/2083 1960/2866/2030 -f 2118/2771/2008 2119/2865/2083 2117/2872/2086 -f 2115/2873/2087 1959/2871/2026 1958/2874/2022 -f 2115/2873/2087 2118/2771/2008 2117/2872/2086 -f 1957/2875/2021 2115/2873/2087 1958/2874/2022 -f 2113/2876/2088 2116/2769/2007 2115/2873/2087 -f 2111/2877/2089 1957/2875/2021 1956/2878/2071 -f 2111/2877/2089 2114/2767/2006 2113/2876/2088 -f 2071/2879/2090 1956/2878/2071 1508/2880/2050 -f 2071/2879/2090 2112/2766/2005 2111/2877/2089 -f 2087/2881/2091 1943/2882/2066 1955/2883/1844 -f 2088/2744/1989 2110/2884/2092 2087/2881/2091 -f 2110/2884/2092 1942/2885/2061 1943/2882/2066 -f 2110/2884/2092 2107/2762/2002 2108/2886/2093 -f 2108/2886/2093 1941/2887/2055 1942/2885/2061 -f 2108/2886/2093 2105/2760/2001 2106/2888/2094 -f 2106/2888/2094 1940/2889/2046 1941/2887/2055 -f 2106/2888/2094 2103/2758/1999 2104/2890/2095 -f 2104/2890/2095 1939/2891/2047 1940/2889/2046 -f 2104/2890/2095 2083/2741/1987 2084/2892/2096 -f 2255/2893/2097 1938/2894/2039 2253/2895/2044 -f 2256/2756/1998 2098/2896/2098 2255/2893/2097 -f 1938/2894/2039 2099/2867/2084 1937/2869/2034 -f 2097/2752/1995 2099/2867/2084 2098/2896/2098 -f 2096/2870/2085 1935/2897/2032 1936/2868/2035 -f 2095/2750/1993 2094/2898/2099 2096/2870/2085 -f 2094/2898/2099 1934/2899/2028 1935/2897/2032 -f 2093/2749/1992 2092/2900/2100 2094/2898/2099 -f 2092/2900/2100 1933/2901/2024 1934/2899/2028 -f 2091/2748/1991 2090/2902/2101 2092/2900/2100 -f 2090/2902/2101 1932/2903/1843 1933/2901/2024 -f 2090/2902/2101 2085/2742/1988 2086/2904/2102 -f 1932/2903/1843 2087/2881/2091 1955/2883/1844 -f 2085/2742/1988 2087/2881/2091 2086/2904/2102 -f 1939/2891/2047 2078/2905/2103 1884/2906/2062 -f 2083/2741/1987 2078/2905/2103 2084/2892/2096 -f 2079/2907/2104 1964/2856/2052 1883/2908/2067 -f 2079/2907/2104 2082/2739/1985 2081/2855/2078 -f 1882/2909/2058 2079/2907/2104 1883/2908/2067 -f 2075/2910/2105 2080/2737/1984 2079/2907/2104 -f 1884/2906/2062 2074/2911/2106 1881/2912/2057 -f 2077/2735/1983 2074/2911/2106 2078/2905/2103 -f 1881/2913/2057 2075/2910/2105 1882/2909/2058 -f 2073/2732/1982 2075/2910/2105 2074/2914/2106 -f 1507/2848/2049 2071/2879/2090 1508/2880/2050 -f 2069/2727/1979 2071/2879/2090 2070/2850/2075 -f 2206/2915/740 2155/2624/732 2210/2916/732 -f 2257/2623/1917 2184/2917/2107 2262/2918/2108 -f 2370/2919/2109 2134/2604/1907 2169/2920/2110 -f 2145/2614/1912 2163/2921/15 2192/2922/2111 -f 2204/2923/1292 2142/2596/1903 2186/2924/1903 -f 2150/2598/1302 2175/2925/2112 2202/2926/1302 -f 2144/2619/15 2188/2927/15 2190/2928/15 -f 2131/2618/15 2190/2928/15 2163/2921/15 -f 2147/2602/1905 2179/2929/2113 2196/2930/2114 -f 2299/2931/734 1974/2932/1931 2281/2608/1910 -f 2159/2933/2115 1874/2934/1276 1948/2935/1865 -f 2132/2613/1902 2171/2936/2116 2165/2937/2117 -f 2167/2938/1622 2138/2600/1624 2177/2939/2118 -f 2260/2940/727 2156/2611/1899 2219/2941/966 -f 2169/2920/2110 2146/2605/1908 2194/2942/2119 -f 2366/2603/1906 2196/2930/2114 2368/2943/2120 -f 2173/2944/15 2148/2589/717 2198/2945/717 -f 2177/2939/2118 2149/2601/1904 2200/2946/2121 -f 2139/2599/1544 2202/2926/1302 2179/2929/2113 -f 2186/2924/1903 2133/2597/1622 2167/2938/1622 -f 2143/2595/15 2182/2947/15 2188/2927/15 -f 2140/2593/15 2173/2944/15 2182/2947/15 -f 2302/2948/2122 2132/2592/1902 2165/2949/2117 -f 2198/2945/717 2151/2590/1292 2204/2923/1292 -f 2160/2950/2123 2152/2951/1900 2145/2952/1912 -f 2216/2953/2124 2160/2954/2123 2214/2955/2125 -f 2162/2956/2126 2216/2953/2124 2218/2957/2127 -f 2192/2958/2111 2160/2959/2123 2145/2960/1912 -f 1874/2934/1276 2157/2961/2128 1422/2962/1274 -f 2161/2963/2129 2156/2964/1899 2152/2951/1900 -f 2220/2965/2130 2159/2966/2115 1948/2967/1865 -f 2156/2968/1899 2218/2969/2127 2212/2970/2131 -f 2212/2970/2131 2217/2971/2132 2220/2965/2130 -f 2157/2972/2128 2191/2973/2133 1422/2974/1274 -f 2191/2973/2133 2214/2975/2125 2192/2958/2111 -f 2159/2976/2115 2215/2977/2134 2158/2978/2135 -f 2218/2957/2127 2215/2977/2134 2217/2979/2132 -f 2158/2978/2135 2213/2980/2136 2157/2981/2128 -f 2215/2977/2134 2214/2955/2125 2213/2980/2136 -f 1453/2982/1830 2203/2983/1292 1847/2984/1542 -f 2197/2985/717 2204/2923/1292 2203/2983/1292 -f 2301/2986/2137 1465/2987/1614 2264/2988/2138 -f 2301/2986/2137 2165/2949/2117 2166/2989/2139 -f 2181/2990/15 1728/2991/1263 1729/2992/1729 -f 2182/2947/15 2174/2993/15 2181/2990/15 -f 2187/2994/15 1729/2992/1729 1726/2995/1722 -f 2188/2927/15 2181/2990/15 2187/2994/15 -f 1618/2996/1352 2168/2997/2140 1655/2998/1351 -f 2185/2999/1903 2167/2938/1622 2168/2997/2140 -f 2180/3000/2113 1700/3001/1608 1701/3002/1330 -f 2179/2929/2113 2201/3003/2141 2180/3000/2113 -f 1654/3004/1621 2199/3005/2142 1657/3006/1620 -f 2178/3007/2118 2200/2946/2121 2199/3005/2142 -f 2174/2993/15 1453/2982/1830 1728/2991/1263 -f 2173/2944/15 2197/2985/717 2174/2993/15 -f 2367/3008/2143 1698/3009/1329 2349/3010/1663 -f 2368/2943/2120 2195/3011/2144 2367/3008/2143 -f 1656/3012/1323 2193/3013/2145 1475/3014/1321 -f 2170/3015/2146 2194/2942/2119 2193/3013/2145 -f 2228/3016/1612 2211/3017/966 1948/3018/1865 -f 2259/3019/727 2219/2941/966 2211/3017/966 -f 1655/2998/1351 2178/3007/2118 1654/3004/1621 -f 2168/2997/2140 2177/2939/2118 2178/3007/2118 -f 2166/3020/2139 1699/3021/1615 1465/3022/1614 -f 2165/2937/2117 2172/3023/2147 2166/3020/2139 -f 2195/3011/2144 1701/3002/1330 1698/3009/1329 -f 2196/2930/2114 2180/3000/2113 2195/3011/2144 -f 2164/3024/15 1727/3025/1728 1440/3026/1733 -f 2163/2921/15 2189/3027/15 2164/3024/15 -f 2189/3027/15 1726/2995/1722 1727/3025/1728 -f 2190/2928/15 2187/2994/15 2189/3027/15 -f 2201/3003/2141 1619/3028/1609 1700/3001/1608 -f 2202/2926/1302 2176/3029/2148 2201/3003/2141 -f 1847/2984/1542 2185/2999/1903 1618/2996/1352 -f 2203/2983/1292 2186/2924/1903 2185/2999/1903 -f 2191/3030/2133 1440/3026/1733 1422/3031/1274 -f 2192/2922/2111 2164/3024/15 2191/3030/2133 -f 2350/3032/1664 2170/3015/2146 1656/3012/1323 -f 2369/3033/2149 2169/2920/2110 2170/3015/2146 -f 2261/3034/2150 1474/3035/2151 2222/3036/2152 -f 2262/2918/2108 2183/3037/2153 2261/3034/2150 -f 2205/3038/740 1925/2576/1896 1862/2575/1895 -f 2205/3038/740 2210/2916/732 2209/3039/732 -f 2303/3040/734 2155/3041/732 2299/2931/734 -f 2304/2617/734 2210/3042/732 2303/3040/734 -f 2220/3043/2130 1948/3044/1865 2211/3045/966 -f 2220/3043/2130 2219/3046/966 2212/3047/2131 -f 2219/3046/966 2156/3048/1899 2212/3047/2131 -f 2194/3049/2119 2261/3034/2150 2193/3050/2145 -f 1475/3051/1321 2261/3034/2150 2222/3036/2152 -f 2207/3052/977 2260/2940/727 2259/3019/727 -f 1899/3053/1611 2259/3019/727 2228/3016/1612 -f 2208/3054/977 2258/2609/727 2260/2940/727 -f 2146/3055/1908 2262/2918/2108 2194/3049/2119 -f 2102/2860/2080 2256/2756/1998 2255/2893/2097 -f 1963/2858/2043 2255/2893/2097 2253/2895/2044 -f 2052/3056/2154 2253/2813/2044 1938/2808/2039 -f 2101/2778/2012 2242/2755/1885 2256/2756/1998 -f 1977/3057/1948 2246/2708/1965 2244/2449/1808 -f 2004/3058/1956 2245/2722/1976 1988/2687/1950 -f 2363/3059/2155 2251/2701/1959 2371/2718/1972 -f 1997/3060/1940 2248/2703/1960 1996/2702/1932 -f 2003/2712/1969 2246/2708/1965 2250/2710/1967 -f 1826/2707/1964 2249/2704/1961 2247/2705/1962 -f 2001/2693/1953 2251/2701/1959 2248/2703/1960 -f 2004/2696/1956 2247/2705/1962 2252/2698/1957 -f 1988/2687/1950 2238/2689/1828 1854/2463/1820 -f 1966/3061/2156 2240/2626/1918 1900/2607/1909 -f 1903/3062/1681 2257/2623/1917 2146/3055/1908 -f 2154/3063/977 2240/2626/1918 2258/2609/727 -f 1421/2662/1928 2242/2559/1885 2229/2561/1887 -f 1885/3064/2157 2243/2493/1833 1966/3065/2156 -f 1810/2440/1800 2238/2486/1828 2232/2472/1824 -f 1841/3066/1324 2236/2474/1826 1840/2473/1825 -f 1839/3067/1324 2234/2469/1823 1838/2468/1324 -f 1810/2440/1800 2236/2474/1826 1837/2441/1801 -f 1806/2466/1822 2235/2470/1823 2231/2438/1798 -f 1836/2480/1803 2234/2469/1823 1835/2443/1803 -f 1977/3057/1948 2233/1843/1254 1814/3068/1680 -f 1807/3069/1613 2231/2438/1798 1808/2471/1291 -f 1803/2434/1794 2239/2437/1797 1885/3064/2157 -f 2611/2378/1745 2221/2405/1610 2659/2407/1772 -f 1796/2648/1773 2228/2235/1612 1948/2533/1865 -f 1551/2052/1432 2227/2152/1531 2226/2122/1502 -f 1549/2115/1495 2225/2150/1530 2224/2113/1493 -f 2415/3070/1437 2226/2122/1502 1554/2153/1438 -f 1555/3071/1501 2223/2116/1496 1499/3072/1384 -f 1553/3073/1434 2224/2113/1493 1556/2151/1435 -f 1499/3072/1384 2330/2000/1380 2316/3074/1385 -f 1814/3068/1680 2241/1845/1256 1903/3062/1681 -f 2207/3052/977 2303/3040/734 2208/3054/977 -f 2208/3054/977 2299/2931/734 2154/3063/977 -f 2183/3037/2153 2302/2948/2122 2301/2986/2137 -f 1474/3035/2151 2301/2986/2137 2264/2988/2138 -f 2184/2917/2107 2300/2591/1901 2302/2948/2122 -f 2154/3063/977 2281/2608/1910 1900/2607/1909 -f 2123/2864/2082 2298/2779/2013 2297/2857/2079 -f 1962/2862/2041 2297/2857/2079 2295/2859/2045 -f 2054/3075/2158 2295/2815/2045 1963/2812/2043 -f 2124/2776/2011 2284/2777/1929 2298/2779/2013 -f 1828/3076/2159 2286/2721/1975 1976/2726/1978 -f 2002/2719/1973 2372/2717/1971 2364/2720/1974 -f 2001/2693/1953 2291/2706/1963 2290/2694/1954 -f 1995/3077/2160 2288/2711/1968 2292/2713/1970 -f 1815/3078/1933 2291/2706/1963 2289/2695/1955 -f 1815/3078/1933 2294/2697/1949 2005/3079/2161 -f 1993/2715/1937 2293/2692/1952 2290/2694/1954 -f 2005/3080/2161 2287/2462/1819 1989/3081/1934 -f 2263/2666/1744 1899/2234/1611 1783/3082/2162 -f 2023/3083/2163 2270/2664/1930 1420/2560/1886 -f 1899/3053/1611 2304/2617/734 2207/3052/977 -f 1967/3084/1834 2281/2608/1910 1974/2932/1931 -f 2141/2622/1916 2282/2484/1827 2300/2591/1901 -f 2285/2495/1835 1885/3064/2157 1966/3065/2156 -f 1809/3085/1718 2279/2488/1821 2273/2489/1829 -f 1889/1844/1255 2274/2453/1812 2282/2484/1827 -f 1836/2480/1803 2277/2439/1799 1837/2441/1801 -f 1834/2479/1803 2275/2444/1802 1835/2443/1803 -f 1805/3086/1272 2276/2465/1802 2272/2433/1793 -f 1989/3081/1934 2279/2464/1821 1855/3087/1725 -f 1976/2726/1978 2274/2453/1812 1813/2450/1809 -f 1831/2476/1665 2278/2442/1802 2275/2444/1802 -f 1833/2478/1619 2273/2489/1829 2277/2439/1799 -f 1804/3088/1837 2272/2433/1793 2271/2431/1791 -f 2280/2432/1792 1803/2434/1794 1885/3064/2157 -f 2608/2382/1749 2263/2377/1744 2661/2379/1746 -f 1554/2058/1438 2269/2149/1529 2268/2056/1436 -f 1556/2055/1435 2267/2148/1528 2266/2053/1433 -f 1559/3089/2164 2265/2120/1500 1487/2008/1388 -f 2417/2118/1498 2268/2056/1436 1558/2119/1499 -f 1557/2060/1440 2266/2053/1433 1560/2061/1441 -f 1487/2008/1388 2331/2003/1383 2317/2009/1389 -f 2317/2009/1389 2264/3090/2138 1465/2238/1614 -f 2316/3074/1385 2222/3091/2152 1474/3092/2151 -f 1460/2252/1626 2329/2028/1408 1471/1935/1317 -f 2328/2027/1407 1472/2269/1643 1481/2189/1566 -f 1471/1935/1317 2327/2024/1404 1470/2198/1575 -f 2326/2023/1403 1481/2189/1566 1480/2196/1573 -f 1470/2198/1575 2325/2020/1400 1469/2206/1583 -f 2324/2019/1399 1480/2196/1573 1479/2204/1581 -f 1469/2206/1583 2323/2016/1396 1468/2214/1591 -f 2322/2015/1395 1479/2204/1581 1478/2212/1589 -f 1468/2214/1591 2321/2012/1392 1467/2222/1599 -f 2320/2011/1391 1478/2212/1589 1477/2220/1597 -f 1467/2222/1599 2319/2007/1387 1466/2229/1606 -f 2318/2006/1386 1477/2220/1597 1476/2228/1605 -f 1466/2229/1606 2317/2009/1389 1465/2238/1614 -f 2315/2002/1382 1476/2228/1605 1475/1939/1321 -f 2264/3090/2138 2316/2005/1385 1474/3093/2151 -f 2222/3091/2152 2315/2002/1382 1475/1939/1321 -f 2665/372/347 2314/1996/1376 1464/2256/1630 -f 2706/1320/995 2390/3094/2165 2711/1321/996 -f 1464/2256/1630 2308/1983/1363 1463/1928/1310 -f 1461/3095/2166 2312/1993/1373 1460/2252/1626 -f 1462/2176/1553 2310/1989/1369 1461/3095/2166 -f 2389/3096/2167 2311/3097/1371 2313/3098/1375 -f 1463/1928/1310 2307/1985/1365 1462/2176/1553 -f 2306/1982/1362 1473/3099/2168 1472/2269/1643 -f 2364/2720/1974 2292/2713/1970 2003/2712/1969 -f 1998/2709/1966 2371/2718/1972 2250/2710/1967 -f 2199/3005/2142 2370/2919/2109 2369/3033/2149 -f 1657/3006/1620 2369/3033/2149 2350/3032/1664 -f 2171/2936/2116 2367/3008/2143 2172/3023/2147 -f 2172/3023/2147 2349/3010/1663 1699/3021/1615 -f 2135/2612/1911 2368/2943/2120 2171/2936/2116 -f 2200/2946/2121 2365/2621/1915 2370/2919/2109 -f 1987/2451/1810 2363/3100/2155 2361/2724/1977 -f 2250/2710/1967 2364/2720/1974 2003/2712/1969 -f 2372/2717/1971 1995/3077/2160 2292/2713/1970 -f 1825/2362/1730 2361/2724/1977 2357/2688/1951 -f 1995/3101/2160 2360/2452/1811 1983/2680/1943 -f 2149/2601/1904 2359/1846/1257 2365/2621/1915 -f 1907/2241/1617 2366/2603/1906 2135/2612/1911 -f 1983/2680/1943 2356/2350/1720 1821/2461/1818 -f 1821/2461/1818 2358/2351/1721 1907/2241/1617 -f 1635/2270/1644 2337/2278/1652 1687/2190/1567 -f 2334/2274/1648 1691/2182/1559 1648/1930/1312 -f 2396/3102/2169 2385/3103/2170 2392/2265/1639 -f 2336/2276/1650 1695/2177/1554 1652/1934/1316 -f 2351/2295/1666 2682/373/348 1691/2182/1559 -f 2348/2288/1662 1656/1941/1323 1660/1940/1322 -f 1699/2239/1615 2347/2287/1661 1703/2230/1607 -f 2346/2286/1660 1660/1940/1322 1664/2221/1598 -f 1703/2230/1607 2345/2285/1659 1707/2223/1600 -f 2344/2284/1658 1664/2221/1598 1668/2213/1590 -f 1707/2223/1600 2343/2283/1657 1711/2215/1592 -f 2342/2282/1656 1668/2213/1590 1672/2205/1582 -f 1711/2215/1592 2341/2281/1655 1715/2207/1584 -f 2340/2280/1654 1672/2205/1582 1676/2197/1574 -f 1715/2207/1584 2339/2279/1653 1719/2199/1576 -f 2338/2277/1651 1676/2197/1574 1680/2191/1568 -f 1719/2199/1576 2335/2275/1649 1723/1936/1318 -f 2337/2278/1652 1680/2191/1568 1687/2190/1567 -f 1723/1936/1318 2336/2276/1650 1652/1934/1316 -f 2333/2272/1646 1648/1930/1312 1684/1929/1311 -f 2332/2273/1647 1684/1929/1311 1695/2177/1554 -f 1914/2363/1731 2357/2688/1951 2359/1846/1257 -f 2395/3104/2171 2352/3105/1667 2353/3106/1668 -f 2487/3107/2172 1614/3108/1313 1632/3109/1315 -f 2589/3110/2173 2176/3111/2148 2175/3112/2112 -f 2153/3113/740 2571/3114/2174 1920/3115/1838 -f 2488/3116/2175 1632/3109/1315 1617/3117/1356 -f 2579/3118/2176 2175/3112/2112 2137/3119/1914 -f 1901/3120/1273 2563/3121/1273 1904/3122/1273 -f 1858/3123/1016 2438/3124/740 1857/3125/694 -f 2483/3126/2177 1615/3127/1557 1614/3108/1313 -f 1898/3128/1273 2565/3129/1273 1906/3130/1273 -f 2550/3131/740 1858/3123/1016 1859/3132/696 -f 2551/3133/740 1859/3132/696 1860/3134/698 -f 2485/3135/2178 1617/3117/1356 1616/3136/1357 -f 2548/3137/2179 1619/3138/1609 2176/3111/2148 -f 2552/3139/740 1860/3134/698 1861/3140/1897 -f 2496/3141/1010 2677/1368/414 1615/3127/1557 -f 1905/3142/1273 2575/3143/1273 1901/3120/1273 -f 2723/1372/740 1861/3140/1897 2696/1373/1011 -f 1863/3144/1893 2553/3145/740 1862/3146/1895 -f 2573/3147/2180 2137/3119/1914 1911/3148/1301 -f 1904/3122/1273 2567/3149/1273 1912/3150/1719 -f 1864/3151/1891 2554/3152/740 1863/3144/1893 -f 1906/3130/1273 2574/3153/1273 1905/3142/1273 -f 2205/3154/740 2585/3155/740 2206/3156/740 -f 1865/3157/1889 2555/3158/740 1864/3151/1891 -f 2495/3159/2181 1621/3160/1602 1619/3138/1609 -f 1862/3146/1895 2595/3161/740 2205/3154/740 -f 1866/3162/1888 2556/3163/740 1865/3157/1889 -f 1867/3164/712 2557/3165/740 1866/3162/1888 -f 2494/3166/2182 1623/3167/1594 1621/3160/1602 -f 1912/3150/1719 2569/3168/2183 1917/3169/1726 -f 1868/3170/714 2558/3171/740 1867/3164/712 -f 2206/3156/740 2570/3172/740 2153/3113/740 -f 1857/3125/694 2559/3173/740 1868/3170/714 -f 2493/3174/2184 1625/3175/1586 1623/3167/1594 -f 2492/3176/2185 1627/3177/1578 1625/3175/1586 -f 1894/3178/1273 2561/3179/1273 1898/3128/1273 -f 2491/3180/2186 1629/3181/1570 1627/3177/1578 -f 1917/3169/1726 2573/3147/2180 1911/3182/1301 -f 2490/3183/2187 1631/3184/1359 1629/3181/1570 -f 2489/3185/2188 1616/3136/1357 1631/3184/1359 -f 1920/3186/1838 2572/3187/1273 1894/3178/1273 -f 1635/3188/1644 2406/3189/2189 2355/3190/1670 -f 2403/3191/2190 1635/3188/1644 1473/3192/2168 -f 2407/3193/2191 2353/3106/1668 2354/3194/1669 -f 2399/3195/2192 2305/3196/1361 2309/3197/1367 -f 2402/3198/2193 1473/3192/2168 2305/3199/1361 -f 2406/3200/2189 2354/3194/1669 2355/3201/1670 -f 2380/3202/2194 2373/3203/2195 2379/3204/2196 -f 2377/3205/2197 2704/1435/1031 2705/1448/1041 -f 2378/3206/2198 2376/3207/2199 2377/3205/2197 -f 2379/3204/2196 2375/3208/2200 2378/3206/2198 -f 2384/3209/2201 2704/1435/1031 2376/3207/2199 -f 2383/3210/2202 2376/3207/2199 2375/3208/2200 -f 2382/3211/2203 2375/3208/2200 2373/3203/2195 -f 2381/3212/2204 2373/3203/2195 2374/3213/2205 -f 2379/3204/2196 2388/3214/1635 2380/3202/2194 -f 2378/3206/2198 2387/3215/2206 2379/3204/2196 -f 2377/3205/2197 2386/3216/2207 2378/3206/2198 -f 2705/1448/1041 2385/3217/2170 2377/3205/2197 -f 2405/3218/1636 2387/3219/2206 2408/3220/2208 -f 2381/3221/2204 2404/3222/2209 2401/3223/2210 -f 2383/3224/2202 2400/3225/2211 2397/3226/2212 -f 2398/3227/2213 2309/3197/1367 2311/3097/1371 -f 2404/3222/2209 2380/3228/2194 2393/2260/1634 -f 2382/3229/2203 2401/3230/2210 2400/3225/2211 -f 2384/3231/2201 2397/3226/2212 2390/3094/2165 -f 2391/3232/2214 2703/1464/463 2352/3105/1667 -f 2710/1466/1049 2313/3098/1375 2700/1467/140 -f 2408/3220/2208 2386/3233/2207 2396/3102/2169 -f 2408/3220/2208 2406/3200/2189 2405/3218/1636 -f 2403/3191/2190 2401/3223/2210 2404/3222/2209 -f 2399/3195/2192 2397/3226/2212 2400/3225/2211 -f 2396/3102/2169 2407/3193/2191 2408/3220/2208 -f 2405/2262/1636 2394/3234/2215 2393/2260/1634 -f 2391/3232/2214 2396/3102/2169 2392/2265/1639 -f 2402/3235/2193 2400/3225/2211 2401/3230/2210 -f 2709/1471/1051 2391/3232/2214 2392/2265/1639 -f 2389/3096/2167 2711/1321/996 2390/3094/2165 -f 2398/3227/2213 2390/3094/2165 2397/3226/2212 -f 2393/2260/1634 2403/3191/2190 2404/3222/2209 -f 2549/3236/740 2437/3237/695 2438/3124/740 -f 2550/3131/740 2436/3238/695 2549/3236/740 -f 2551/3133/740 2439/3239/695 2550/3131/740 -f 2552/3139/740 2440/3240/695 2551/3133/740 -f 2723/1372/740 2441/3241/695 2552/3139/740 -f 2554/3152/740 2443/3242/695 2553/3145/740 -f 2555/3158/740 2442/3243/695 2554/3152/740 -f 2556/3163/740 2444/3244/695 2555/3158/740 -f 2557/3165/740 2445/3245/695 2556/3163/740 -f 2558/3171/740 2446/3246/695 2557/3165/740 -f 2559/3173/740 2447/3247/695 2558/3171/740 -f 2559/3173/740 2437/3237/695 2448/3248/695 -f 2459/3249/695 2446/3246/695 2447/3247/695 -f 2714/1485/695 2453/3250/695 2441/3241/695 -f 2457/3251/695 2444/3244/695 2445/3245/695 -f 2440/3240/695 2451/3252/695 2439/3239/695 -f 2454/3253/695 2443/3242/695 2442/3243/695 -f 2460/3254/695 2447/3247/695 2448/3248/695 -f 2436/3238/695 2450/3255/695 2437/3237/695 -f 2458/3256/695 2445/3245/695 2446/3246/695 -f 2441/3241/695 2452/3257/695 2440/3240/695 -f 2456/3258/695 2442/3243/695 2444/3244/695 -f 2450/3255/695 2448/3248/695 2437/3237/695 -f 2439/3239/695 2449/3259/695 2436/3238/695 -f 2468/3260/695 2505/3261/695 2506/3262/695 -f 2542/3263/695 2545/3264/695 2541/3265/695 -f 2538/3266/695 2541/3265/695 2537/3267/695 -f 2471/3268/695 2543/3269/695 2539/3270/695 -f 2534/3271/695 2537/3267/695 2533/3272/695 -f 2464/3273/695 2535/3274/695 2531/3275/695 -f 2530/3276/695 2533/3272/695 2529/3277/695 -f 2463/3278/695 2531/3275/695 2527/3279/695 -f 2526/3280/695 2529/3277/695 2525/3281/695 -f 2522/3282/695 2525/3281/695 2521/3283/695 -f 2518/3284/695 2521/3283/695 2517/3285/695 -f 2514/3286/695 2517/3285/695 2513/3287/695 -f 2466/3288/695 2510/3289/695 2505/3261/695 -f 2504/3290/695 2509/3291/695 2501/3292/695 -f 2470/3293/695 2547/3294/695 2543/3269/695 -f 2487/3107/2172 2474/3295/695 2486/3296/695 -f 2483/3126/2177 2486/3296/695 2482/3297/695 -f 2485/3135/2178 2481/3298/695 2484/3299/695 -f 2489/3185/2188 2480/3300/695 2481/3298/695 -f 2490/3183/2187 2479/3301/695 2480/3300/695 -f 2491/3180/2186 2478/3302/695 2479/3301/695 -f 2492/3176/2185 2477/3303/695 2478/3302/695 -f 2493/3174/2184 2476/3304/695 2477/3303/695 -f 2476/3304/695 2495/3159/2181 2475/3305/695 -f 2718/1544/1010 2473/3306/695 2717/1545/695 -f 2488/3116/2175 2484/3299/695 2474/3295/695 -f 2496/3141/1010 2482/3297/695 2473/3306/695 -f 2546/3307/695 2502/3308/695 2545/3264/695 -f 2544/3309/695 2456/3258/695 2457/3251/695 -f 2500/3310/695 2455/3311/695 2454/3253/695 -f 2503/3312/695 2454/3253/695 2456/3258/695 -f 2722/1552/695 2513/3287/695 2719/1553/695 -f 2716/1555/695 2515/3313/695 2721/1556/695 -f 2512/3314/695 2452/3257/695 2453/3250/695 -f 2465/3315/695 2519/3316/695 2515/3313/695 -f 2516/3317/695 2451/3252/695 2452/3257/695 -f 2461/3318/695 2523/3319/695 2519/3316/695 -f 2520/3320/695 2449/3259/695 2451/3252/695 -f 2462/3321/695 2527/3279/695 2523/3319/695 -f 2524/3322/695 2450/3255/695 2449/3259/695 -f 2720/1566/695 2453/3250/695 2715/1487/695 -f 2528/3323/695 2460/3254/695 2450/3255/695 -f 2532/3324/695 2459/3249/695 2460/3254/695 -f 2472/3325/695 2539/3270/695 2535/3274/695 -f 2536/3326/695 2458/3256/695 2459/3249/695 -f 2540/3327/695 2457/3251/695 2458/3256/695 -f 2469/3328/695 2506/3262/695 2547/3294/695 -f 2507/3329/695 2501/3292/695 2502/3308/695 -f 2500/3310/695 2502/3308/695 2501/3292/695 -f 2504/3290/695 2506/3262/695 2505/3261/695 -f 2508/3330/695 2501/3292/695 2509/3291/695 -f 2499/3331/695 2505/3261/695 2510/3289/695 -f 2512/3314/695 2719/1553/695 2513/3287/695 -f 2514/3286/695 2721/1556/695 2515/3313/695 -f 2516/3317/695 2513/3287/695 2517/3285/695 -f 2518/3284/695 2515/3313/695 2519/3316/695 -f 2520/3320/695 2517/3285/695 2521/3283/695 -f 2522/3282/695 2519/3316/695 2523/3319/695 -f 2524/3322/695 2521/3283/695 2525/3281/695 -f 2526/3280/695 2523/3319/695 2527/3279/695 -f 2528/3323/695 2525/3281/695 2529/3277/695 -f 2530/3276/695 2527/3279/695 2531/3275/695 -f 2532/3324/695 2529/3277/695 2533/3272/695 -f 2534/3271/695 2531/3275/695 2535/3274/695 -f 2536/3326/695 2533/3272/695 2537/3267/695 -f 2538/3266/695 2535/3274/695 2539/3270/695 -f 2540/3327/695 2537/3267/695 2541/3265/695 -f 2542/3263/695 2539/3270/695 2543/3269/695 -f 2544/3309/695 2541/3265/695 2545/3264/695 -f 2546/3307/695 2543/3269/695 2547/3294/695 -f 2503/3312/695 2545/3264/695 2502/3308/695 -f 2507/3329/695 2547/3294/695 2506/3262/695 -f 2473/3306/695 2461/3318/695 2465/3315/695 -f 2474/3295/695 2464/3273/695 2463/3278/695 -f 2717/1545/695 2465/3315/695 2716/1555/695 -f 2466/3288/695 2475/3305/695 2467/3332/695 -f 2477/3303/695 2466/3288/695 2468/3260/695 -f 2478/3302/695 2468/3260/695 2469/3328/695 -f 2479/3301/695 2469/3328/695 2470/3293/695 -f 2480/3300/695 2470/3293/695 2471/3268/695 -f 2481/3298/695 2471/3268/695 2472/3325/695 -f 2484/3299/695 2472/3325/695 2464/3273/695 -f 2482/3297/695 2462/3321/695 2461/3318/695 -f 2486/3296/695 2463/3278/695 2462/3321/695 -f 2572/3187/1273 2570/3172/740 2576/3333/695 -f 2573/3147/2180 2568/3334/695 2579/3118/2176 -f 2569/3168/2183 2566/3335/695 2568/3334/695 -f 2578/3336/695 2565/3129/1273 2564/3337/695 -f 2567/3149/1273 2562/3338/695 2566/3335/695 -f 2577/3339/695 2574/3153/1273 2578/3336/695 -f 2564/3337/695 2561/3179/1273 2560/3340/695 -f 2562/3338/695 2575/3143/1273 2577/3339/695 -f 2561/3179/1273 2576/3333/695 2560/3340/695 -f 2560/3340/695 2586/3341/695 2580/3342/695 -f 2581/3343/695 2577/3339/695 2587/3344/695 -f 2582/3345/695 2560/3340/695 2580/3342/695 -f 2587/3344/695 2578/3336/695 2588/3346/695 -f 2566/3335/695 2581/3343/695 2583/3347/695 -f 2588/3346/695 2564/3337/695 2582/3345/695 -f 2568/3334/695 2583/3347/695 2584/3348/695 -f 2579/3118/2176 2584/3348/695 2589/3110/2173 -f 2576/3333/695 2585/3155/740 2586/3341/695 -f 2443/3242/695 2595/3161/740 2553/3145/740 -f 2497/3349/695 2585/3155/740 2595/3161/740 -f 2548/3137/2179 2475/3305/695 2495/3159/2181 -f 2589/3110/2173 2594/3350/695 2548/3137/2179 -f 2594/3350/695 2467/3332/695 2475/3305/695 -f 2584/3348/695 2593/3351/695 2594/3350/695 -f 2509/3291/695 2592/3352/695 2508/3330/695 -f 2511/3353/695 2582/3345/695 2592/3352/695 -f 2467/3332/695 2591/3354/695 2510/3289/695 -f 2593/3351/695 2581/3343/695 2591/3354/695 -f 2499/3331/695 2511/3353/695 2509/3291/695 -f 2498/3355/695 2588/3346/695 2511/3353/695 -f 2508/3330/695 2590/3356/695 2455/3311/695 -f 2592/3352/695 2580/3342/695 2590/3356/695 -f 2510/3289/695 2498/3355/695 2499/3331/695 -f 2591/3354/695 2587/3344/695 2498/3355/695 -f 2590/3356/695 2443/3242/695 2455/3311/695 -f 2580/3342/695 2497/3349/695 2590/3356/695 -f 1402/3357/1926 2660/3358/2216 2270/3359/1930 -f 2609/3360/2217 2661/2379/1746 2660/3358/2216 -f 1420/3361/1886 2658/3362/2218 2229/3363/1887 -f 2610/3364/2219 2659/2407/1772 2658/3362/2218 -f 1777/3365/1841 2657/3366/2220 1776/3367/1854 -f 2650/3368/2221 2656/2429/1789 2657/3366/2220 -f 1776/3369/1854 2655/3370/2222 1775/3371/1855 -f 2657/3372/2220 2654/2426/1788 2655/3370/2222 -f 2655/3370/2222 1774/3373/1872 1775/3371/1855 -f 2654/2426/1788 2653/3374/2223 2655/3370/2222 -f 2653/3374/2223 1409/3375/1867 1774/3373/1872 -f 2652/2424/1787 2607/3376/2224 2653/3374/2223 -f 1447/3377/1840 2650/3368/2221 1777/3365/1841 -f 2634/3378/2225 2651/2422/1786 2650/3368/2221 -f 1433/3379/1856 2625/3380/2226 1410/3381/1861 -f 2648/3382/2227 2624/2394/1761 2625/3380/2226 -f 1431/3383/1850 2648/3382/2227 1433/3379/1856 -f 2647/2417/1782 2648/3382/2227 2646/3384/2228 -f 2644/3385/2229 1431/3383/1850 1429/3386/1847 -f 2645/2415/1780 2646/3384/2228 2644/3385/2229 -f 2642/3387/2230 1429/3386/1847 1427/3388/1846 -f 2643/2413/1778 2644/3385/2229 2642/3387/2230 -f 2640/3389/2231 1427/3388/1846 1425/3390/1921 -f 2641/2411/1776 2642/3387/2230 2640/3389/2231 -f 2638/3391/2232 1425/3390/1921 1423/3392/1924 -f 2639/2409/1774 2640/3389/2231 2638/3391/2232 -f 2636/3393/2233 1423/3392/1924 1421/3394/1928 -f 2637/2406/1771 2638/3391/2232 2636/3393/2233 -f 2658/3362/2218 1421/3394/1928 2229/3363/1887 -f 2659/2407/1772 2636/3393/2233 2658/3362/2218 -f 1418/3395/1882 2634/3378/2225 1447/3377/1840 -f 2632/3396/2234 2635/2404/1770 2634/3378/2225 -f 1416/3397/1878 2632/3396/2234 1418/3395/1882 -f 2630/3398/2235 2633/2402/1769 2632/3396/2234 -f 1414/3399/1874 2630/3398/2235 1416/3397/1878 -f 2628/3400/2236 2631/2400/1767 2630/3398/2235 -f 1412/3401/1864 2628/3400/2236 1414/3399/1874 -f 2626/3402/2237 2629/2398/1765 2628/3400/2236 -f 1410/3381/1861 2626/3402/2237 1412/3401/1864 -f 2625/3380/2226 2627/2396/1763 2626/3402/2237 -f 2598/3403/2238 1408/3404/1859 1397/3405/1863 -f 2598/3403/2238 2622/2391/1758 2623/3406/2239 -f 1408/3404/1859 2621/3407/2240 1407/3408/1852 -f 2623/3406/2239 2620/2389/1756 2621/3407/2240 -f 1407/3408/1852 2619/3409/2241 1406/3410/1849 -f 2621/3407/2240 2618/2387/1754 2619/3409/2241 -f 1406/3410/1849 2617/3411/2242 1405/3412/1261 -f 2619/3409/2241 2616/2385/1752 2617/3411/2242 -f 1405/3412/1261 2615/3413/2243 1404/3414/1262 -f 2617/3411/2242 2614/2383/1750 2615/3413/2243 -f 1404/3414/1262 2613/3415/2244 1403/3416/1923 -f 2615/3413/2243 2612/2380/1747 2613/3415/2244 -f 1403/3416/1923 2609/3360/2217 1402/3357/1926 -f 2613/3415/2244 2608/2382/1749 2609/3360/2217 -f 2660/3358/2216 1420/3361/1886 2270/3359/1930 -f 2661/2379/1746 2610/3364/2219 2660/3358/2216 -f 2607/3376/2224 1401/3417/1868 1409/3375/1867 -f 2606/2376/1743 2605/3418/2245 2607/3376/2224 -f 2605/3418/2245 1400/3419/1880 1401/3417/1868 -f 2604/2374/1742 2603/3420/2246 2605/3418/2245 -f 2603/3420/2246 1399/3421/1876 1400/3419/1880 -f 2602/2372/1740 2601/3422/2247 2603/3420/2246 -f 2601/3422/2247 1398/3423/1870 1399/3421/1876 -f 2600/2370/1738 2597/3424/2248 2601/3422/2247 -f 2597/3424/2248 1397/3405/1863 1398/3423/1870 -f 2596/2368/1736 2598/3403/2238 2597/3424/2248 -f 2759/3425/2249 2867/3426/2250 2866/3427/2251 -f 2766/3428/2252 2771/1673/1089 2767/3429/2253 -f 1312/1706/1122 2745/3430/2254 1313/1796/1210 -f 2778/3431/2255 2786/3432/2256 2779/3433/2257 -f 2791/3434/2258 2794/3435/2259 2795/3436/2260 -f 2780/1738/1154 1280/1696/1112 1282/3437/2261 -f 1385/1832/1245 2727/1827/1240 1381/1833/1246 -f 2809/1812/1225 1266/3438/2262 2841/3439/2263 -f 1393/1831/1244 2750/1723/1139 2724/1728/1144 -f 1328/1838/1250 2740/3440/2264 1332/1837/1249 -f 2756/3441/2265 2422/2077/1457 2412/3442/2266 -f 2826/3443/2267 2862/3444/2268 2827/3445/2269 -f 2423/2032/1412 2832/3446/2270 2425/2136/1516 -f 2828/1823/1236 1271/1686/1102 2821/3447/2271 -f 2865/1781/1196 1287/3448/2272 2760/3449/2273 -f 1336/1743/1158 2740/3440/2264 2739/3450/2274 -f 2776/3451/2275 2428/3452/2276 2415/3070/1437 -f 2772/3453/2277 1285/3454/2278 2768/3455/2279 -f 2430/2050/1430 2844/3456/2280 2429/3457/2281 -f 1356/1688/1104 2735/1829/1242 2734/3458/2282 -f 1389/1690/1106 2726/3459/2283 1385/1832/1245 -f 2841/3439/2263 2752/1710/1126 2845/3460/2284 -f 2837/1762/1177 1268/1720/1136 1267/3461/2285 -f 1337/1834/1247 2730/1713/1129 2738/1821/1234 -f 2409/2042/1422 2868/3462/2286 2410/3463/2287 -f 2760/3449/2273 1288/3464/2288 2753/3465/2289 -f 1344/1820/1233 2747/3466/1123 1305/1835/1248 -f 2866/3427/2251 2763/3467/2290 2762/3468/2291 -f 2800/1676/1092 1276/1736/1152 1277/3469/2292 -f 2862/3444/2268 2859/3470/2293 2858/3471/2294 -f 2859/3470/2293 2854/3472/2295 2858/3471/2294 -f 2854/3472/2295 2851/3473/2296 2850/3474/2297 -f 2850/3474/2297 2847/3475/2298 2846/3476/2299 -f 2847/3475/2298 2842/3477/2300 2846/3476/2299 -f 2842/3477/2300 2811/3478/2301 2810/3479/2302 -f 2814/3480/2303 2774/3481/2304 2815/3482/2305 -f 2789/3483/2306 2417/2118/1498 2416/2063/1443 -f 2761/1779/1194 1285/3454/2278 1286/3484/2307 -f 2839/3485/2308 2834/3486/2309 2838/3487/2310 -f 2787/3488/2311 2791/3434/2258 2786/3432/2256 -f 2834/3486/2309 2831/3489/2312 2830/3490/2313 -f 2831/3489/2312 2822/3491/2314 2830/3490/2313 -f 2825/3492/2315 2423/2032/1412 2424/2039/1419 -f 2772/3453/2277 2748/3493/2316 1284/3494/2317 -f 2818/3495/2318 2754/3496/2319 2819/3497/2320 -f 1365/1691/1107 2732/3498/2321 1361/1730/1146 -f 2428/3452/2276 2812/3499/2322 2430/2050/1430 -f 2807/3500/2323 2818/3495/2318 2819/3497/2320 -f 2803/3501/2324 2806/3502/2325 2807/3500/2323 -f 2798/3503/2326 2803/3501/2324 2799/3504/2327 -f 2794/3435/2259 2799/3504/2327 2795/3436/2260 -f 2414/3505/2328 2776/3506/2275 2415/2057/1437 -f 2782/1792/1206 2838/3487/2310 2783/1793/1207 -f 2413/3507/2329 2764/3508/2330 2409/2042/1422 -f 2411/2036/1416 2756/3441/2265 2412/3442/2266 -f 1297/1727/1143 2748/3493/2316 1304/1840/1251 -f 2868/3462/2286 2411/2036/1416 2410/3463/2287 -f 2763/3467/2290 2767/3429/2253 2762/3468/2291 -f 2435/3509/2331 2825/3492/2315 2424/2039/1419 -f 2434/2094/1474 2864/3510/2332 2435/3509/2331 -f 2856/3511/2333 2434/2094/1474 2433/2099/1479 -f 2432/3512/2334 2856/3511/2333 2433/2099/1479 -f 2431/2108/1488 2852/3513/2335 2432/3512/2334 -f 2429/3457/2281 2848/3514/2336 2431/2108/1488 -f 2810/3479/2302 2814/3480/2303 2815/3482/2305 -f 2774/3515/2304 2778/3431/2255 2779/3433/2257 -f 2840/3516/2337 2713/316/292 2427/2131/1511 -f 2836/3517/2338 2427/2131/1511 2426/3518/2339 -f 2788/3519/2340 2414/3505/2328 2417/2118/1498 -f 2425/2136/1516 2836/3517/2338 2426/3518/2339 -f 2822/3491/2314 2826/3443/2267 2827/3445/2269 -f 2820/3520/2341 1288/3464/2288 1272/3521/2342 -f 2754/3496/2319 2758/3522/2343 2759/3425/2249 -f 2817/3523/2344 2421/3524/2345 2422/2077/1457 -f 2861/3525/2346 2870/3526/2347 2871/1824/1237 -f 2421/3524/2345 2801/3527/2348 2420/2071/1451 -f 2801/3527/2348 2419/3528/2349 2420/2071/1451 -f 2797/3529/2350 2418/2068/1448 2419/3528/2349 -f 2418/2068/1448 2789/3483/2306 2416/2063/1443 -f 1348/1745/1160 2751/1722/1138 1289/1842/1253 -f 2857/3530/2351 2869/1715/1131 2870/3526/2347 -f 2769/1826/1239 2413/3507/2329 2712/220/196 -f 2808/1735/1151 1272/3521/2342 1275/3531/2352 -f 1328/1838/1250 2743/1774/1189 2741/3532/2353 -f 2759/3425/2249 2865/1781/1196 2760/3449/2273 -f 2867/3426/2250 2757/3533/2354 2868/3462/2286 -f 2866/3427/2251 2761/1779/1194 2865/1781/1196 -f 2763/3467/2290 2868/3462/2286 2764/3508/2330 -f 2827/3445/2269 2861/3525/2346 2828/1823/1236 -f 2863/3534/2355 2825/3492/2315 2864/3510/2332 -f 2861/3525/2346 2858/3471/2294 2857/3530/2351 -f 2859/3470/2293 2864/3510/2332 2860/3535/2356 -f 2857/3530/2351 2854/3472/2295 2853/1716/1132 -f 2856/3511/2333 2859/3470/2293 2860/3535/2356 -f 2853/1716/1132 2850/3474/2297 2849/1709/1125 -f 2852/3513/2335 2855/3536/2357 2856/3511/2333 -f 2850/3474/2297 2845/3460/2284 2849/1709/1125 -f 2847/3475/2298 2852/3513/2335 2848/3514/2336 -f 2845/3460/2284 2842/3477/2300 2841/3439/2263 -f 2844/3456/2280 2847/3475/2298 2848/3514/2336 -f 2842/3477/2300 2809/1812/1225 2841/3439/2263 -f 2812/3499/2322 2843/3537/2358 2844/3456/2280 -f 2815/3482/2305 2773/3538/1155 2816/1724/1140 -f 2775/3539/2359 2813/3540/2360 2776/3451/2275 -f 2784/1763/1178 2838/3487/2310 2837/1762/1177 -f 2840/3516/2337 2782/1792/1206 2781/3541/2361 -f 2838/3487/2310 2833/1719/1135 2837/1762/1177 -f 2835/3542/2362 2840/3516/2337 2836/3517/2338 -f 2779/3433/2257 2785/1694/1110 2780/1738/1154 -f 2787/3488/2311 2777/3543/2363 2788/3519/2340 -f 2833/1719/1135 2830/3490/2313 2829/1685/1101 -f 2832/3446/2270 2835/3542/2362 2836/3517/2338 -f 2830/3490/2313 2821/3447/2271 2829/1685/1101 -f 2823/3544/2364 2832/3446/2270 2824/3545/2365 -f 2821/3447/2271 2827/3445/2269 2828/1823/1236 -f 2826/3443/2267 2824/3545/2365 2825/3492/2315 -f 2820/3520/2341 2754/3496/2319 2753/3465/2289 -f 2755/3546/2366 2817/3523/2344 2756/3441/2265 -f 2808/1735/1151 2819/3497/2320 2820/3520/2341 -f 2818/3495/2318 2805/3547/2367 2817/3523/2344 -f 2809/1812/1225 2815/3482/2305 2816/1724/1140 -f 2813/3540/2360 2811/3478/2301 2812/3499/2322 -f 2803/3501/2324 2808/1735/1151 2804/1737/1153 -f 2805/3547/2367 2802/3548/2368 2801/3527/2348 -f 2799/3504/2327 2804/1737/1153 2800/1676/1092 -f 2802/3548/2368 2797/3529/2350 2801/3527/2348 -f 2796/1678/1094 2799/3504/2327 2800/1676/1092 -f 2798/3503/2326 2793/3549/2369 2797/3529/2350 -f 2791/3434/2258 2796/1678/1094 2792/1815/1228 -f 2793/3549/2369 2790/3550/2370 2789/3483/2306 -f 2786/3432/2256 2792/1815/1228 2785/1694/1110 -f 2790/3550/2370 2788/3519/2340 2789/3483/2306 -f 2773/1740/1155 2779/3433/2257 2780/1738/1154 -f 2777/3543/2363 2775/3551/2359 2776/3506/2275 -f 2768/3455/2279 2771/1673/1089 2772/3453/2277 -f 2769/1826/1239 2766/3428/2252 2765/3552/2371 -f 2762/3468/2291 2768/3455/2279 2761/1779/1194 -f 2766/3428/2252 2764/3508/2330 2765/3552/2371 -f 2754/3496/2319 2760/3449/2273 2753/3465/2289 -f 2757/3533/2354 2755/3546/2366 2756/3441/2265 -f 2729/3553/1114 2902/3554/2372 2730/3555/1129 -f 3011/3556/2373 2990/3557/2374 2991/3558/2375 -f 2869/3559/1131 2926/3560/2376 2870/3561/2347 -f 1282/3562/2261 2890/3563/2377 1283/3564/1141 -f 2727/3565/1240 2900/3566/2378 2728/3567/1241 -f 2724/3568/1144 2921/3569/2379 2749/3570/1145 -f 2726/3571/2283 2897/3572/2380 2898/3573/2381 -f 2736/3574/1159 2923/3575/2382 2751/3576/1138 -f 2743/3577/1189 2913/3578/2383 2741/3579/2353 -f 1285/3580/2278 2893/3581/2384 1286/3582/2307 -f 2871/3583/1237 2877/3584/2385 1270/3585/1238 -f 1270/3585/1238 2878/3586/2386 1271/3587/1102 -f 2735/3588/1242 2906/3589/2387 2734/3590/2282 -f 1269/3591/1103 2875/3592/2388 1268/3593/1136 -f 2730/3555/1129 2910/3594/2389 2738/3595/1234 -f 1287/3596/2272 2895/3597/2390 1288/3598/2288 -f 1288/3598/2288 2879/3599/2391 1272/3600/2342 -f 2872/3601/1195 2894/3602/2392 1287/3596/2272 -f 1267/3603/2285 2888/3604/2393 1281/3605/1108 -f 1272/3600/2342 2882/3606/2394 1275/3607/2352 -f 2733/3608/1147 2907/3609/2395 2735/3588/1242 -f 2728/3567/1241 2901/3610/2396 2729/3553/1114 -f 1284/3611/2317 2892/3612/2397 1285/3580/2278 -f 1279/3613/1111 2887/3614/2398 1280/3615/1112 -f 2749/3570/1145 2920/3616/2399 2748/3617/2316 -f 1277/3618/2292 2885/3619/2400 1278/3620/1093 -f 1281/3605/1108 2903/3621/2401 2731/3622/1109 -f 2739/3623/2274 2908/3624/2402 2736/3574/1159 -f 2726/3571/2283 2899/3625/2403 2727/3565/1240 -f 1271/3587/1102 2876/3626/2404 1269/3591/1103 -f 2750/3627/1139 2896/3628/2405 2724/3568/1144 -f 2731/3622/1109 2904/3629/2406 2732/3630/2321 -f 1280/3615/1112 2889/3631/2407 1282/3562/2261 -f 1283/3632/1141 2880/3633/2408 1273/3634/1142 -f 1274/3635/1224 2873/3636/2409 1266/3637/2262 -f 2734/3590/2282 2897/3572/2380 2725/3638/1105 -f 2742/3639/1127 2925/3640/2410 2869/3559/1131 -f 1273/3634/1142 2881/3641/2411 1274/3635/1224 -f 2870/3561/2347 2927/3642/2412 2871/3583/1237 -f 1284/3611/2317 2920/3616/2399 2891/3643/2413 -f 1286/3582/2307 2928/3644/2414 2872/3601/1195 -f 2743/3577/1189 2916/3645/2415 2915/3646/2416 -f 2751/3576/1138 2922/3647/2417 2750/3627/1139 -f 2738/3595/1234 2909/3648/2418 2737/3649/1235 -f 2752/3650/1126 2914/3651/2419 2742/3639/1127 -f 1276/3652/1152 2882/3606/2394 2883/3653/2420 -f 2747/3654/1123 2918/3655/2421 2746/3656/1124 -f 1276/3652/1152 2884/3657/2422 1277/3618/2292 -f 2745/3658/2254 2916/3645/2415 2744/3659/1211 -f 2740/3660/2264 2911/3661/2423 2739/3623/2274 -f 2741/3579/2353 2912/3662/2424 2740/3660/2264 -f 1268/3593/1136 2874/3663/2425 1267/3603/2285 -f 1266/3637/2262 2924/3664/2426 2752/3650/1126 -f 2732/3630/2321 2905/3665/2427 2733/3608/1147 -f 2746/3656/1124 2917/3666/2428 2745/3658/2254 -f 2737/3649/1235 2919/3667/2429 2747/3668/1123 -f 1278/3620/1093 2886/3669/2430 1279/3613/1111 -f 2972/3670/2431 2959/3671/2432 2945/3672/2433 -f 3102/3673/2434 2998/3674/2435 2999/3675/2436 -f 3007/3676/2437 3015/3677/2438 3006/3678/2439 -f 3012/3679/2440 2947/3680/2441 2948/3681/2442 -f 3023/3682/2443 3018/3683/2444 3019/3684/2445 -f 3024/3685/2446 2942/3686/2447 2943/3687/2448 -f 3031/3688/2449 3054/3689/2450 3030/3690/2451 -f 3013/3691/2452 2940/3692/2453 2941/3693/2454 -f 3043/3694/2455 3038/3695/2456 3039/3696/2457 -f 3040/3697/2458 2932/3698/2459 3044/3699/2460 -f 3051/3700/2461 3138/3701/2462 3050/3702/2463 -f 3056/3703/2464 2946/3704/2465 2936/3705/2466 -f 3207/3706/2467 3062/3707/2468 3063/3708/2469 -f 3071/3709/2470 3083/3710/2471 3070/3711/2472 -f 3025/3712/2473 2943/3687/2448 2945/3713/2433 -f 3086/3714/2474 3078/3715/2475 3079/3716/2476 -f 2924/3717/2426 3076/3718/2477 2914/3719/2419 -f 3099/3720/2478 3095/3721/2479 3094/3722/2480 -f 3081/3723/2481 2929/3724/2482 2980/3725/2483 -f 3099/3720/2478 3114/3726/2484 3098/3727/2485 -f 3085/3728/2486 2981/3729/2487 2982/3730/2488 -f 3170/3731/2489 3106/3732/2490 3107/3733/2491 -f 2877/3734/2385 3089/3735/2492 3036/3736/2493 -f 2883/3737/2420 3112/3738/2494 3004/3739/2495 -f 3100/3740/2496 2950/3741/2497 3116/3742/2498 -f 3130/3743/2499 3122/3744/2500 3123/3745/2501 -f 2920/3746/2399 3128/3747/2502 2988/3748/2503 -f 3155/3749/2504 3134/3750/2505 3135/3751/2506 -f 3052/3752/2507 2959/3753/2432 3140/3754/2508 -f 2911/3755/2423 3144/3756/2509 2996/3757/2510 -f 3140/3754/2508 2960/3758/2511 3148/3759/2512 -f 2874/3760/2425 3152/3761/2513 3048/3762/2514 -f 3156/3763/2515 2972/3764/2431 2971/3765/2516 -f 2904/3766/2406 3060/3767/2517 2905/3768/2427 -f 3188/3769/2518 2957/3770/2519 3173/3771/2520 -f 3124/3772/2521 2973/3773/2522 3129/3774/2523 -f 3180/3775/2524 2966/3776/2525 3157/3777/2526 -f 2909/3778/2418 3120/3779/2527 2919/3780/2429 -f 2916/3781/2415 3132/3782/2528 3133/3783/2529 -f 3181/3784/2530 2954/3785/2531 2955/3786/2532 -f 3101/3787/2533 2964/3788/2534 2979/3789/2535 -f 3189/3790/2536 2962/3791/2537 2953/3792/2538 -f 2910/3793/2389 3177/3794/2539 3160/3795/2540 -f 3199/3796/2541 3203/3797/2542 3198/3798/2543 -f 3200/3799/2544 2950/3741/2497 2951/3800/2545 -f 2900/3801/2378 3176/3802/2546 2901/3803/2396 -f 3165/3804/2547 2971/3765/2516 2969/3805/2548 -f 3164/3806/2549 2975/3807/2550 3117/3808/2551 -f 2899/3809/2403 3193/3810/2552 3184/3811/2553 -f 3064/3812/2554 2962/3791/2537 3208/3813/2555 -f 3093/3814/2556 2948/3681/2442 2949/3815/2557 -f 2897/3816/2380 3205/3817/2558 3192/3818/2559 -f 3149/3819/2560 2932/3698/2459 2931/3820/2561 -f 3200/3799/2544 2935/3821/2562 3201/3822/2563 -f 3056/3703/2464 2937/3823/2564 3065/3824/2565 -f 3108/3825/2566 2952/3826/2567 3169/3827/2568 -f 3115/3828/2569 3198/3798/2543 3114/3726/2484 -f 2907/3829/2395 3060/3767/2517 3061/3830/2570 -f 2874/3760/2425 3049/3831/2571 2888/3832/2393 -f 3207/3706/2467 3191/3833/2572 3206/3834/2573 -f 2885/3835/2400 3017/3836/2574 2886/3837/2430 -f 2881/3838/2411 3069/3839/2575 2873/3840/2409 -f 3195/3841/2576 3183/3842/2577 3194/3843/2578 -f 3110/3844/2579 3203/3797/2542 3202/3845/2580 -f 2909/3778/2418 3160/3795/2540 3161/3846/2581 -f 3187/3847/2582 3175/3848/2583 3186/3849/2584 -f 2918/3850/2421 3120/3851/2527 3121/3852/2585 -f 3158/3853/2586 3178/3854/2587 3179/3855/2588 -f 2897/3816/2380 3193/3810/2552 2898/3856/2381 -f 2884/3857/2422 3004/3739/2495 3005/3858/2589 -f 2900/3801/2378 3184/3811/2553 3185/3859/2590 -f 3126/3860/2591 3171/3861/2592 3170/3731/2489 -f 3118/3862/2593 3162/3863/2594 3163/3864/2595 -f 3142/3865/2596 3167/3866/2597 3166/3867/2598 -f 3135/3751/2506 3131/3868/2599 3130/3743/2499 -f 2901/3803/2396 3177/3794/2539 2902/3869/2372 -f 3058/3870/2600 3146/3871/2601 3147/3872/2602 -f 3165/3804/2547 2968/3873/2603 3141/3874/2604 -f 3046/3875/2605 3151/3876/2606 3150/3877/2607 -f 3155/3749/2504 3167/3866/2597 3154/3878/2608 -f 2994/3879/2609 3143/3880/2610 3142/3865/2596 -f 3148/3759/2512 2961/3881/2611 3057/3882/2612 -f 3147/3872/2602 3138/3701/2462 3139/3883/2613 -f 3126/3860/2591 2987/3884/2614 3127/3885/2615 -f 3169/3827/2568 2977/3886/2616 3125/3887/2617 -f 2922/3888/2417 3104/3889/2618 3105/3890/2619 -f 3110/3844/2579 3003/3891/2620 3111/3892/2621 -f 3034/3893/2622 3090/3894/2623 3091/3895/2624 -f 3109/3896/2625 2935/3821/2562 2938/3897/2626 -f 2926/3898/2376 3089/3735/2492 2927/3899/2412 -f 3107/3733/2491 3103/3900/2627 3102/3673/2434 -f 2914/3719/2419 3077/3901/2628 2925/3902/2410 -f 2928/3903/2414 3096/3904/2629 3097/3905/2630 -f 3082/3906/2631 3075/3907/2632 3083/3710/2471 -f 3086/3714/2474 3090/3894/2623 3087/3908/2633 -f 2889/3909/2407 3029/3910/2634 2890/3911/2377 -f 3081/3723/2481 2970/3912/2635 3073/3913/2636 -f 3066/3914/2637 3070/3711/2472 3067/3915/2638 -f 2877/3734/2385 3037/3916/2639 2878/3917/2386 -f 3066/3914/2637 3054/3689/2450 3055/3918/2640 -f 3045/3919/2641 2931/3820/2561 2930/3920/2642 -f 3043/3694/2455 3151/3876/2606 3042/3921/2643 -f 3019/3684/2445 3015/3677/2438 3014/3922/2644 -f 3092/3923/2645 2933/3924/2646 3033/3925/2647 -f 3031/3688/2449 3027/3926/2648 3026/3927/2649 -f 3023/3682/2443 3027/3926/2648 3022/3928/2650 -f 2908/3929/2402 2996/3757/2510 2997/3930/2651 -f 3011/3556/2373 3095/3721/2479 3010/3931/2652 -f 3001/3932/2653 2938/3897/2626 2939/3933/2654 -f 2993/3934/2655 2968/3873/2603 2967/3935/2656 -f 2922/3888/2417 3172/3936/2657 2896/3937/2405 -f 2880/3938/2408 3068/3939/2658 2881/3838/2411 -f 2879/3940/2391 3197/3941/2659 3204/3942/2660 -f 2875/3943/2388 3041/3944/2661 3152/3761/2513 -f 3195/3841/2576 3191/3833/2572 3190/3945/2662 -f 2892/3946/2397 3096/3904/2629 2893/3947/2384 -f 2907/3829/2395 3205/3817/2558 2906/3948/2387 -f 3187/3847/2582 3183/3842/2577 3182/3949/2663 -f 2882/3950/2394 3204/3942/2660 3112/3738/2494 -f 2913/3951/2383 3153/3952/2664 3168/3953/2665 -f 3174/3954/2666 3178/3854/2587 3175/3848/2583 -f 2894/3955/2392 3197/3941/2659 2895/3956/2390 -f 3196/3957/2667 2953/3792/2538 2954/3785/2531 -f 3158/3853/2586 3162/3863/2594 3159/3958/2668 -f 3181/3784/2530 2956/3959/2669 3188/3769/2518 -f 2923/3960/2382 2997/3930/2651 3104/3889/2618 -f 3173/3771/2520 2958/3961/2670 3180/3775/2524 -f 2921/3962/2379 3172/3936/2657 3128/3747/2502 -f 3118/3963/2593 3122/3744/2500 3119/3964/2671 -f 2913/3951/2383 3144/3756/2509 2912/3965/2424 -f 2918/3850/2421 3132/3782/2528 2917/3966/2428 -f 3164/3806/2549 2966/3776/2525 2965/3967/2672 -f 3063/3708/2469 3059/3968/2673 3058/3870/2600 -f 2916/3781/2415 3153/3952/2664 2915/3969/2416 -f 3051/3700/2461 3047/3970/2674 3046/3875/2605 -f 2903/3971/2401 3145/3972/2675 2904/3766/2406 -f 2994/3879/2609 2998/3674/2435 2995/3973/2676 -f 2888/3832/2393 3137/3974/2677 2903/3971/2401 -f 3136/3975/2678 2973/3773/2522 2972/3764/2431 -f 2986/3976/2679 2990/3557/2374 2987/3884/2614 -f 3124/3772/2521 2975/3977/2550 2974/3978/2680 -f 2928/3903/2414 3113/3979/2681 2894/3955/2392 -f 3007/3676/2437 3003/3891/2620 3002/3980/2682 -f 3034/3893/2622 3038/3695/2456 3035/3981/2683 -f 3108/3825/2566 2979/3789/2535 2978/3982/2684 -f 2925/3902/2410 3088/3983/2685 2926/3898/2376 -f 3100/3740/2496 2949/3815/2557 2984/3984/2686 -f 2924/3717/2426 3069/3839/2575 3084/3985/2687 -f 3085/3728/2486 2983/3986/2688 3092/3923/2645 -f 3079/3716/2476 3075/3907/2632 3074/3987/2689 -f 3073/3913/2636 2981/3729/2487 3080/3988/2690 -f 2889/3909/2407 3021/3989/2691 3028/3990/2692 -f 3072/3991/2693 2937/3823/2564 2929/3724/2482 -f 3057/3882/2612 2963/3992/2694 3064/3812/2554 -f 2880/3938/2408 3029/3993/2634 3053/3994/2695 -f 3052/3752/2507 2930/3920/2642 2944/3995/2696 -f 2878/3917/2386 3041/3944/2661 2876/3996/2404 -f 3040/3697/2458 2933/3924/2646 2934/3997/2697 -f 2885/3835/2400 3005/3858/2589 3016/3998/2698 -f 3025/3712/2473 2946/3999/2465 3032/4000/2699 -f 2887/4001/2398 3017/3836/2574 3021/3989/2691 -f 3020/4002/2700 2941/3693/2454 2942/3686/2447 -f 2892/3946/2397 2989/4003/2701 3009/4004/2702 -f 3001/3932/2653 2940/3692/2453 3008/4005/2703 -f 2993/3934/2655 2964/3788/2534 3000/4006/2704 -f 2992/4007/2705 2976/4008/2706 2947/3680/2441 -f 2920/3746/2399 2989/4003/2701 2891/4009/2413 -f 3108/3825/2566 3170/3731/2489 3107/3733/2491 -f 3105/3890/2619 3171/3861/2592 3172/3936/2657 -f 3065/3824/2565 3055/3918/2640 3056/3703/2464 -f 3053/3994/2695 3067/3915/2638 3068/3939/2658 -f 3201/3822/2563 3199/3796/2541 3200/3799/2544 -f 3197/3941/2659 3203/3797/2542 3204/3942/2660 -f 3044/3699/2460 3150/3877/2607 3043/3694/2455 -f 3152/3761/2513 3042/3921/2643 3151/3876/2606 -f 3208/3813/2555 3190/3945/2662 3207/3706/2467 -f 3192/3818/2559 3206/3834/2573 3191/3833/2572 -f 3012/3679/2440 3094/3722/2480 3011/3556/2373 -f 3009/4004/2702 3095/3721/2479 3096/3904/2629 -f 3208/3813/2555 3063/3708/2469 3064/3812/2554 -f 3205/3817/2558 3062/3707/2468 3206/3834/2573 -f 3196/3957/2667 3182/3949/2663 3195/3841/2576 -f 3184/3811/2553 3194/3843/2578 3183/3842/2577 -f 3201/3822/2563 3110/3844/2579 3202/3845/2580 -f 3204/3942/2660 3111/3892/2621 3112/3738/2494 -f 3165/3804/2547 3155/3749/2504 3156/3763/2515 -f 3168/3953/2665 3154/3878/2608 3167/3866/2597 -f 3173/3771/2520 3187/3847/2582 3188/3769/2518 -f 3176/3802/2546 3186/3849/2584 3175/3848/2583 -f 3116/3742/2498 3199/3796/2541 3115/3828/2569 -f 3197/3941/2659 3114/3726/2484 3198/3798/2543 -f 3196/3957/2667 3190/3945/2662 3189/3790/2536 -f 3192/3818/2559 3194/3843/2578 3193/3810/2552 -f 3157/3777/2526 3179/3855/2588 3180/3775/2524 -f 3177/3794/2539 3159/3958/2668 3160/3795/2540 -f 3188/3769/2518 3182/3949/2663 3181/3784/2530 -f 3184/3811/2553 3186/3849/2584 3185/3859/2590 -f 3000/4006/2704 3102/3673/2434 2999/3675/2436 -f 3104/3889/2618 2998/3674/2435 3103/3900/2627 -f 3180/3775/2524 3174/3954/2666 3173/3771/2520 -f 3177/3794/2539 3175/3848/2583 3178/3854/2587 -f 3125/3887/2617 3170/3731/2489 3169/3827/2568 -f 3172/3936/2657 3127/3885/2615 3128/3747/2502 -f 3117/3808/2551 3163/3864/2595 3164/3806/2549 -f 3161/3846/2581 3119/4010/2671 3120/3779/2527 -f 3165/3804/2547 3142/3865/2596 3166/3867/2598 -f 3168/3953/2665 3143/3880/2610 3144/3756/2509 -f 3129/3774/2523 3123/3745/2501 3124/3772/2521 -f 3121/3852/2585 3131/3868/2599 3132/3782/2528 -f 3157/3777/2526 3163/3864/2595 3158/3853/2586 -f 3161/3846/2581 3159/3958/2668 3162/3863/2594 -f 3148/3759/2512 3058/3870/2600 3147/3872/2602 -f 3060/3767/2517 3146/3871/2601 3059/3968/2673 -f 3136/3975/2678 3155/3749/2504 3135/3751/2506 -f 3133/3783/2529 3154/3878/2608 3153/3952/2664 -f 3149/3819/2560 3046/3875/2605 3150/3877/2607 -f 3048/3762/2514 3151/3876/2606 3047/3970/2674 -f 3148/3759/2512 3139/3883/2613 3140/3754/2508 -f 3137/3974/2677 3146/3871/2601 3145/3972/2675 -f 3141/3874/2604 2994/3879/2609 3142/3865/2596 -f 2996/3757/2510 3143/3880/2610 2995/3973/2676 -f 3052/3752/2507 3139/3883/2613 3051/3700/2461 -f 3137/3974/2677 3050/3702/2463 3138/3701/2462 -f 3136/3975/2678 3130/3743/2499 3129/3774/2523 -f 3133/3783/2529 3131/3868/2599 3134/3750/2505 -f 3125/3887/2617 2986/3976/2679 3126/3860/2591 -f 2988/3748/2503 3127/3885/2615 2987/3884/2614 -f 3117/4011/2551 3123/3745/2501 3118/3963/2593 -f 3121/3852/2585 3119/3964/2671 3122/3744/2500 -f 3116/3742/2498 3099/3720/2478 3100/3740/2496 -f 3113/3979/2681 3098/3727/2485 3114/3726/2484 -f 3109/3896/2625 3002/3980/2682 3110/3844/2579 -f 3004/3739/2495 3111/3892/2621 3003/3891/2620 -f 3033/3925/2647 3091/3895/2624 3092/3923/2645 -f 3036/3736/2493 3090/3894/2623 3035/3981/2683 -f 3108/3825/2566 3102/3673/2434 3101/3787/2533 -f 3104/3889/2618 3106/3732/2490 3105/3890/2619 -f 3080/3988/2690 3086/3714/2474 3079/3716/2476 -f 3088/3983/2685 3078/3715/2475 3087/3908/2633 -f 3093/3814/2556 3099/3720/2478 3094/3722/2480 -f 3096/3904/2629 3098/3727/2485 3097/3905/2630 -f 3081/3723/2481 3071/3709/2470 3072/3991/2693 -f 3084/3985/2687 3070/3711/2472 3083/3710/2471 -f 3085/3728/2486 3091/3895/2624 3086/3714/2474 -f 3089/3735/2492 3087/3908/2633 3090/3894/2623 -f 3073/3913/2636 3082/3906/2631 3081/3723/2481 -f 3084/3985/2687 3075/3907/2632 3076/3718/2477 -f 3073/3913/2636 3079/3716/2476 3074/3987/2689 -f 3076/3718/2477 3078/3715/2475 3077/3901/2628 -f 3024/3685/2446 3026/3927/2649 3023/3682/2443 -f 3028/3990/2692 3022/3928/2650 3027/3926/2648 -f 3065/3824/2565 3071/3709/2470 3066/3914/2637 -f 3069/3839/2575 3067/3915/2638 3070/3711/2472 -f 3064/3812/2554 3058/3870/2600 3057/3882/2612 -f 3060/3767/2517 3062/3707/2468 3061/3830/2570 -f 3032/4000/2699 3055/3918/2640 3031/3688/2449 -f 3053/3994/2695 3030/3690/2451 3054/3689/2450 -f 3052/3752/2507 3046/3875/2605 3045/3919/2641 -f 3049/3831/2571 3047/3970/2674 3050/3702/2463 -f 3044/3699/2460 3039/3696/2457 3040/3697/2458 -f 3037/3916/2639 3042/3921/2643 3041/3944/2661 -f 3033/3925/2647 3039/3696/2457 3034/3893/2622 -f 3036/3736/2493 3038/3695/2456 3037/3916/2639 -f 3008/4005/2703 3014/3922/2644 3007/3676/2437 -f 3005/3858/2589 3015/3677/2438 3016/3998/2698 -f 3032/4000/2699 3026/3927/2649 3025/3712/2473 -f 3028/3990/2692 3030/3690/2451 3029/3910/2634 -f 3024/3685/2446 3019/3684/2445 3020/4002/2700 -f 3021/3989/2691 3018/3683/2444 3022/3928/2650 -f 3013/3691/2452 3019/3684/2445 3014/3922/2644 -f 3017/3836/2574 3015/3677/2438 3018/3683/2444 -f 3012/3679/2440 2991/3558/2375 2992/4007/2705 -f 2989/4003/2701 3010/3931/2652 3009/4004/2702 -f 3008/4005/2703 3002/3980/2682 3001/3932/2653 -f 3004/3739/2495 3006/3678/2439 3005/3858/2589 -f 3000/4006/2704 2994/3879/2609 2993/3934/2655 -f 2996/3757/2510 2998/3674/2435 2997/3930/2651 -f 2992/4007/2705 2986/3976/2679 2985/4012/2707 -f 2989/4003/2701 2987/3884/2614 2990/3557/2374 -f 2985/4012/2707 2977/3886/2616 2976/4008/2706 -f 493/1/1 417/650/609 837/2/2 -f 963/4/4 506/510/477 428/5/5 -f 9/7/7 635/709/650 636/8/8 -f 332/10/10 336/545/512 58/11/11 -f 474/13/13 17/17/17 15/14/14 -f 475/16/16 19/19/19 17/17/17 -f 476/18/18 21/21/21 19/19/19 -f 477/20/20 23/23/22 21/21/21 -f 2697/22/15 2662/4013/34 23/23/22 -f 498/24/23 408/698/639 409/25/24 -f 479/27/25 28/31/25 26/28/26 -f 480/30/28 30/33/28 28/31/25 -f 481/32/29 32/35/29 30/33/28 -f 482/34/30 34/37/30 32/35/29 -f 483/36/31 36/39/31 34/37/30 -f 483/36/31 484/40/32 38/38/32 -f 473/15/15 15/14/14 38/38/32 -f 49/41/33 48/61/41 34/42/30 -f 2662/44/34 2663/1887/1281 43/45/35 -f 47/47/36 46/63/43 30/48/28 -f 21/50/21 42/62/42 41/51/37 -f 45/53/38 44/565/528 26/54/26 -f 50/56/39 49/41/33 36/43/31 -f 17/58/17 40/64/44 39/59/40 -f 48/61/41 47/47/36 32/49/29 -f 23/46/22 43/45/35 42/62/42 -f 46/63/43 45/53/38 28/55/25 -f 15/60/14 39/59/40 50/56/39 -f 19/52/19 41/51/37 40/64/44 -f 499/65/15 496/353/15 412/66/45 -f 522/68/47 494/680/628 421/69/48 -f 49/41/33 50/56/39 355/71/50 -f 50/56/39 39/59/40 359/73/52 -f 39/59/40 40/64/44 363/74/53 -f 376/75/54 2686/555/15 2664/76/55 -f 41/51/37 42/62/42 371/78/57 -f 515/80/59 420/649/608 422/81/60 -f 374/83/62 2688/554/467 2685/84/15 -f 216/86/64 245/90/68 242/87/65 -f 217/89/67 248/92/70 245/90/68 -f 2676/91/69 2679/493/417 248/92/70 -f 288/93/71 66/366/341 67/94/72 -f 218/96/74 236/141/117 287/97/75 -f 256/99/77 327/389/364 75/100/78 -f 2684/102/80 297/367/342 294/103/81 -f 264/105/83 80/419/394 79/106/84 -f 497/108/15 495/681/15 442/109/86 -f 226/111/87 267/118/94 263/112/88 -f 309/114/90 305/483/454 302/115/91 -f 228/117/93 271/122/98 267/118/94 -f 313/119/95 309/114/90 306/116/92 -f 230/121/97 275/126/102 271/122/98 -f 317/123/99 313/119/95 310/120/96 -f 232/125/101 279/130/106 275/126/102 -f 321/127/103 317/123/99 314/124/100 -f 234/129/105 283/134/110 279/130/106 -f 325/131/107 321/127/103 318/128/104 -f 214/133/109 292/463/434 283/134/110 -f 329/135/111 325/131/107 322/132/108 -f 224/113/89 263/112/88 259/137/113 -f 215/88/66 242/87/65 238/139/115 -f 236/141/117 221/376/351 300/142/118 -f 220/143/119 235/383/358 328/144/120 -f 909/146/122 99/153/129 98/147/123 -f 912/149/125 911/154/130 88/150/126 -f 913/152/128 100/157/133 99/153/129 -f 911/154/130 914/158/134 87/155/131 -f 915/156/132 101/161/137 100/157/133 -f 914/158/134 916/200/176 86/159/135 -f 917/160/136 102/165/141 101/161/137 -f 918/162/138 912/149/125 89/151/127 -f 2700/164/140 2667/2084/1464 102/165/141 -f 2701/166/142 918/162/138 90/163/139 -f 934/168/144 919/175/151 104/169/145 -f 935/171/147 920/1318/986 103/172/148 -f 922/174/150 105/180/156 104/169/145 -f 923/176/152 921/1314/993 91/177/153 -f 924/179/155 106/184/160 105/180/156 -f 925/181/157 923/176/152 92/178/154 -f 926/183/159 107/188/164 106/184/160 -f 927/185/161 925/181/157 93/182/158 -f 928/187/163 108/192/168 107/188/164 -f 929/189/165 927/185/161 94/186/162 -f 930/191/167 109/196/172 108/192/168 -f 931/193/169 929/189/165 95/190/166 -f 932/195/171 110/199/175 109/196/172 -f 933/197/173 931/193/169 96/194/170 -f 910/148/124 98/147/123 110/199/175 -f 916/200/176 933/197/173 97/198/174 -f 131/201/177 1029/328/304 1027/202/178 -f 123/204/180 135/325/301 1015/205/181 -f 207/207/183 118/337/313 1028/208/184 -f 150/210/186 126/335/311 1013/211/187 -f 86/159/135 142/216/192 134/213/189 -f 102/165/141 146/261/237 138/214/190 -f 86/159/135 97/198/174 211/215/191 -f 152/217/193 128/330/306 125/218/194 -f 150/210/186 1017/212/188 2712/220/196 -f 152/217/193 149/219/195 2672/222/198 -f 167/224/200 1033/299/275 1034/225/201 -f 870/227/203 160/1313/318 157/228/204 -f 872/230/206 158/1312/319 1019/231/207 -f 172/233/209 164/339/315 161/234/210 -f 178/236/212 170/304/280 1020/237/213 -f 172/233/209 169/235/211 177/239/215 -f 186/241/217 178/236/212 1022/238/214 -f 180/240/216 177/239/215 185/243/219 -f 186/241/217 1023/242/218 1024/245/221 -f 188/244/220 185/243/219 193/247/223 -f 202/249/225 194/246/222 1024/245/221 -f 204/251/227 196/248/224 193/247/223 -f 202/249/225 1025/250/226 1026/253/229 -f 204/251/227 201/252/228 209/255/231 -f 120/257/233 117/333/309 208/258/234 -f 102/165/141 2667/2084/1464 2669/260/236 -f 99/153/129 100/157/133 130/262/238 -f 104/169/145 105/180/156 166/264/240 -f 141/266/242 212/256/232 209/255/231 -f 143/268/244 210/254/230 1026/253/229 -f 88/150/126 87/155/131 134/213/189 -f 98/147/123 119/334/310 206/271/247 -f 96/194/170 203/278/254 211/215/191 -f 205/259/235 208/258/234 200/272/248 -f 207/207/183 1039/209/185 1038/274/250 -f 109/196/172 110/199/175 206/271/247 -f 96/194/170 95/190/166 195/277/253 -f 197/273/249 200/272/248 192/279/255 -f 199/275/251 1038/274/250 1037/281/257 -f 108/192/168 109/196/172 198/276/252 -f 95/190/166 94/186/162 187/284/260 -f 181/285/261 189/280/256 192/279/255 -f 183/287/263 191/282/258 1037/281/257 -f 108/192/168 190/283/259 182/289/265 -f 93/182/158 179/296/272 187/284/260 -f 181/285/261 184/286/262 176/290/266 -f 183/287/263 1036/288/264 1035/292/268 -f 106/184/160 107/188/164 182/289/265 -f 93/182/158 92/178/154 171/295/271 -f 165/297/273 173/291/267 176/290/266 -f 175/293/269 1035/292/268 1033/299/275 -f 105/180/156 106/184/160 174/294/270 -f 91/177/153 163/340/316 171/295/271 -f 828/300/276 153/310/286 156/301/277 -f 827/170/146 104/169/145 154/265/241 -f 170/304/280 162/341/317 1021/305/281 -f 869/173/149 103/172/148 159/306/282 -f 830/308/284 155/226/202 1034/225/201 -f 153/310/286 165/297/273 168/298/274 -f 90/163/139 151/318/294 2674/311/287 -f 145/312/288 2668/344/320 2671/313/289 -f 147/315/291 2670/345/321 2713/316/292 -f 101/161/137 138/214/190 130/262/238 -f 89/151/127 127/331/307 151/318/294 -f 137/319/295 145/312/288 148/314/290 -f 147/315/291 1031/317/293 1030/321/297 -f 133/323/299 141/266/242 144/267/243 -f 143/268/244 1016/269/245 1015/205/181 -f 137/319/295 140/320/296 132/326/302 -f 131/201/177 139/322/298 1030/321/297 -f 121/329/305 124/336/312 125/218/194 -f 88/150/126 122/270/246 127/331/307 -f 120/257/233 113/338/314 116/332/308 -f 99/153/129 114/263/239 119/334/310 -f 123/204/180 1014/206/182 1013/211/187 -f 121/329/305 133/323/299 136/324/300 -f 115/203/179 1027/202/178 1028/208/184 -f 129/327/303 132/326/302 116/332/308 -f 212/256/232 141/266/242 142/216/192 -f 210/254/230 143/268/244 144/267/243 -f 205/259/235 206/271/247 119/334/310 -f 118/337/313 207/207/183 208/258/234 -f 212/256/232 211/215/191 203/278/254 -f 210/254/230 209/255/231 201/252/228 -f 205/259/235 197/273/249 198/276/252 -f 207/207/183 199/275/251 200/272/248 -f 204/251/227 203/278/254 195/277/253 -f 194/246/222 202/249/225 201/252/228 -f 189/280/256 190/283/259 198/276/252 -f 191/282/258 192/279/255 200/272/248 -f 196/248/224 195/277/253 187/284/260 -f 194/246/222 193/247/223 185/243/219 -f 181/285/261 182/289/265 190/283/259 -f 191/282/258 183/287/263 184/286/262 -f 188/244/220 187/284/260 179/296/272 -f 178/236/212 186/241/217 185/243/219 -f 181/285/261 173/291/267 174/294/270 -f 175/293/269 176/290/266 184/286/262 -f 172/233/209 180/240/216 179/296/272 -f 170/304/280 178/236/212 177/239/215 -f 165/297/273 166/264/240 174/294/270 -f 167/224/200 168/298/274 176/290/266 -f 164/339/315 172/233/209 171/295/271 -f 162/341/317 170/304/280 169/235/211 -f 153/310/286 154/265/241 166/264/240 -f 167/224/200 155/226/202 156/301/277 -f 164/339/315 163/340/316 871/307/283 -f 162/341/317 161/234/210 873/229/205 -f 160/342/318 159/1286/282 829/303/279 -f 158/343/319 157/1288/204 831/302/278 -f 2675/223/199 2674/311/287 151/318/294 -f 2673/221/197 2672/222/198 149/219/195 -f 145/312/288 146/261/237 2669/260/236 -f 147/315/291 148/314/290 2671/313/289 -f 152/217/193 151/318/294 127/331/307 -f 150/210/186 149/219/195 125/218/194 -f 137/319/295 138/214/190 146/261/237 -f 147/315/291 139/322/298 140/320/296 -f 141/266/242 133/323/299 134/213/189 -f 143/268/244 135/325/301 136/324/300 -f 129/327/303 130/262/238 138/214/190 -f 139/322/298 131/201/177 132/326/302 -f 133/323/299 121/329/305 122/270/246 -f 123/204/180 124/336/312 136/324/300 -f 129/327/303 113/338/314 114/263/239 -f 131/201/177 115/203/179 116/332/308 -f 128/330/306 127/331/307 122/270/246 -f 126/335/311 125/218/194 124/336/312 -f 113/338/314 120/257/233 119/334/310 -f 118/337/313 117/333/309 116/332/308 -f 457/346/322 446/361/336 214/133/109 -f 456/347/323 457/346/322 234/129/105 -f 455/348/324 456/347/323 232/125/101 -f 454/349/325 455/348/324 230/121/97 -f 453/350/326 454/349/325 228/117/93 -f 452/351/327 453/350/326 226/111/87 -f 451/352/328 452/351/327 224/113/89 -f 496/353/15 497/108/15 443/110/86 -f 519/354/329 423/564/527 424/355/330 -f 450/357/332 2695/689/631 2676/91/69 -f 449/358/333 450/357/332 217/89/67 -f 448/359/334 449/358/333 216/86/64 -f 447/360/335 448/359/334 215/88/66 -f 446/361/336 447/360/335 213/140/116 -f 286/362/337 301/374/349 298/363/338 -f 299/365/340 65/444/415 66/366/341 -f 297/367/342 250/450/421 253/368/343 -f 219/369/344 218/96/74 251/98/76 -f 295/371/346 68/449/420 2665/372/347 -f 301/374/349 254/445/416 257/375/350 -f 221/376/351 220/143/119 255/145/121 -f 293/377/352 290/462/433 285/378/353 -f 291/380/355 76/465/436 85/381/356 -f 235/383/358 233/391/366 324/384/359 -f 282/379/354 285/378/353 281/385/360 -f 284/382/357 85/381/356 84/387/362 -f 327/389/364 323/397/372 74/390/365 -f 233/391/366 231/399/374 320/392/367 -f 278/386/361 281/385/360 277/393/368 -f 280/388/363 84/387/362 83/395/370 -f 323/397/372 319/405/380 73/398/373 -f 231/399/374 229/407/382 316/400/375 -f 274/394/369 277/393/368 273/401/376 -f 276/396/371 83/395/370 82/403/378 -f 319/405/380 315/413/388 72/406/381 -f 229/407/382 227/415/390 312/408/383 -f 270/402/377 273/401/376 269/409/384 -f 272/404/379 82/403/378 81/411/386 -f 315/413/388 311/420/395 71/414/389 -f 227/415/390 225/422/397 308/416/391 -f 266/410/385 269/409/384 265/417/392 -f 268/412/387 81/411/386 80/419/394 -f 311/420/395 307/429/403 70/421/396 -f 225/422/397 223/4014/970 304/423/398 -f 825/424/399 832/1284/965 503/425/400 -f 523/427/15 499/65/15 411/67/46 -f 307/429/403 303/1330/967 69/430/404 -f 511/431/405 425/661/620 416/432/406 -f 505/434/23 436/489/457 437/435/408 -f 262/418/393 265/417/392 261/437/409 -f 501/439/411 517/562/525 426/440/412 -f 2677/442/414 219/369/344 296/370/345 -f 299/365/340 256/99/77 64/101/79 -f 254/445/416 329/135/111 326/136/112 -f 2678/446/417 2680/495/462 249/447/418 -f 252/95/73 67/94/72 68/449/420 -f 250/450/421 286/362/337 289/364/339 -f 247/448/419 249/447/418 246/451/422 -f 997/453/424 1009/1469/1042 992/454/425 -f 244/452/423 246/451/422 243/456/427 -f 996/458/429 2709/1471/1051 2707/459/430 -f 237/461/432 240/466/437 290/462/433 -f 213/140/116 238/139/115 292/463/434 -f 239/464/435 77/1325/998 76/465/436 -f 241/457/428 243/456/427 240/466/437 -f 301/374/349 286/362/337 287/97/75 -f 937/467/438 289/364/339 298/363/338 -f 286/362/337 250/450/421 251/98/76 -f 938/469/440 253/368/343 289/364/339 -f 329/135/111 254/445/416 255/145/121 -f 939/470/441 940/492/460 257/375/350 -f 282/379/354 283/134/110 292/463/434 -f 942/471/442 285/378/353 290/462/433 -f 325/131/107 329/135/111 328/144/120 -f 943/473/444 939/470/441 326/136/112 -f 278/386/361 279/130/106 283/134/110 -f 944/474/445 281/385/360 285/378/353 -f 321/127/103 325/131/107 324/384/359 -f 945/475/446 943/473/444 322/132/108 -f 274/394/369 275/126/102 279/130/106 -f 946/476/447 277/393/368 281/385/360 -f 317/123/99 321/127/103 320/392/367 -f 947/477/448 945/475/446 318/128/104 -f 270/402/377 271/122/98 275/126/102 -f 948/478/449 273/401/376 277/393/368 -f 313/119/95 317/123/99 316/400/375 -f 949/479/450 947/477/448 314/124/100 -f 266/410/385 267/118/94 271/122/98 -f 950/480/451 269/409/384 273/401/376 -f 309/114/90 313/119/95 312/408/383 -f 951/481/452 949/479/450 310/120/96 -f 262/418/393 263/112/88 267/118/94 -f 952/482/453 265/417/392 269/409/384 -f 305/483/454 309/114/90 308/416/391 -f 953/484/455 951/481/452 306/116/92 -f 258/438/410 259/137/113 263/112/88 -f 954/485/456 261/437/409 265/417/392 -f 502/26/23 409/25/24 434/486/457 -f 509/488/23 435/549/457 436/489/457 -f 297/367/342 2684/102/80 2683/443/80 -f 2702/490/458 2681/104/82 294/103/81 -f 254/445/416 301/374/349 300/142/118 -f 936/468/439 298/363/338 257/375/350 -f 247/448/419 248/92/70 2679/493/417 -f 956/494/461 249/447/418 2680/495/462 -f 250/450/421 297/367/342 296/370/345 -f 955/491/459 294/103/81 253/368/343 -f 244/452/423 245/90/68 248/92/70 -f 957/497/464 246/451/422 249/447/418 -f 241/457/428 242/87/65 245/90/68 -f 957/497/464 958/498/465 243/456/427 -f 237/461/432 238/139/115 242/87/65 -f 958/498/465 959/499/466 240/466/437 -f 293/377/352 292/463/434 238/139/115 -f 959/499/466 941/472/443 290/462/433 -f 43/45/35 2663/1887/1281 2687/500/467 -f 370/502/469 374/83/62 377/85/63 -f 372/504/471 376/75/54 56/77/56 -f 42/62/42 43/45/35 375/501/468 -f 366/506/473 370/502/469 373/503/470 -f 368/508/475 372/504/471 55/505/472 -f 506/510/477 507/804/724 418/511/478 -f 362/512/479 366/506/473 369/507/474 -f 364/514/481 368/508/475 54/509/476 -f 358/516/483 362/512/479 365/513/480 -f 360/518/485 364/514/481 53/515/482 -f 40/64/44 41/51/37 367/79/58 -f 48/61/41 49/41/33 351/72/51 -f 354/521/488 358/516/483 361/517/484 -f 356/523/490 360/518/485 52/519/486 -f 350/525/492 354/521/488 357/522/489 -f 352/527/494 356/523/490 63/524/491 -f 346/529/496 350/525/492 353/526/493 -f 348/531/498 352/527/494 62/528/495 -f 342/533/500 346/529/496 349/530/497 -f 344/535/502 348/531/498 61/532/499 -f 47/47/36 48/61/41 347/520/487 -f 338/538/505 342/533/500 345/534/501 -f 340/540/507 344/535/502 60/536/503 -f 46/63/43 47/47/36 343/537/504 -f 334/543/510 338/538/505 341/539/506 -f 336/545/512 340/540/507 59/541/508 -f 45/53/38 46/63/43 339/542/509 -f 508/436/23 437/435/408 413/547/514 -f 510/487/23 434/486/457 435/549/457 -f 512/356/331 424/355/330 960/550/516 -f 330/552/518 334/543/510 337/544/511 -f 2688/554/467 374/83/62 375/501/468 -f 2686/555/15 376/75/54 377/85/63 -f 374/83/62 370/502/469 371/78/57 -f 376/75/54 372/504/471 373/503/470 -f 370/502/469 366/506/473 367/79/58 -f 372/504/471 368/508/475 369/507/474 -f 513/556/15 514/690/632 415/557/520 -f 516/548/515 413/547/514 459/559/522 -f 366/506/473 362/512/479 363/74/53 -f 368/508/475 364/514/481 365/513/480 -f 362/512/479 358/516/483 359/73/52 -f 364/514/481 360/518/485 361/517/484 -f 358/516/483 354/521/488 355/71/50 -f 360/518/485 356/523/490 357/522/489 -f 354/521/488 350/525/492 351/72/51 -f 356/523/490 352/527/494 353/526/493 -f 350/525/492 346/529/496 347/520/487 -f 352/527/494 348/531/498 349/530/497 -f 346/529/496 342/533/500 343/537/504 -f 348/531/498 344/535/502 345/534/501 -f 342/533/500 338/538/505 339/542/509 -f 344/535/502 340/540/507 341/539/506 -f 338/538/505 334/543/510 335/546/513 -f 340/540/507 336/545/512 337/544/511 -f 334/543/510 330/552/518 331/561/524 -f 336/545/512 332/10/10 333/553/519 -f 517/562/525 518/799/720 429/563/526 -f 520/82/61 422/81/60 423/564/527 -f 44/565/528 45/53/38 335/546/513 -f 1203/566/529 382/593/556 383/567/530 -f 1200/568/531 383/567/530 384/569/532 -f 1204/570/533 384/569/532 385/571/534 -f 1206/572/535 385/571/534 386/573/536 -f 1208/574/537 386/573/536 2689/575/538 -f 1215/577/540 387/1283/401 867/578/541 -f 1216/580/543 1212/1311/992 388/581/544 -f 1218/583/546 1216/580/543 389/582/545 -f 1220/585/548 1218/583/546 390/584/547 -f 1222/587/550 1220/585/548 391/586/549 -f 1224/589/552 1222/587/550 392/588/551 -f 1226/591/554 1224/589/552 393/590/553 -f 1203/566/529 1226/591/554 394/592/555 -f 1228/594/557 1231/597/560 396/595/558 -f 1231/597/560 1233/599/562 397/598/561 -f 1233/599/562 1235/601/564 398/600/563 -f 1235/601/564 1237/603/566 399/602/565 -f 1237/603/566 1239/621/583 2691/604/567 -f 1241/605/568 400/609/571 825/606/399 -f 1243/608/570 401/611/573 400/609/571 -f 1245/610/572 402/613/575 401/611/573 -f 1247/612/574 403/615/577 402/613/575 -f 1249/614/576 404/617/579 403/615/577 -f 1251/616/578 405/619/581 404/617/579 -f 1253/618/580 406/620/582 405/619/581 -f 1228/594/557 395/596/559 406/620/582 -f 1239/621/583 1255/629/591 2690/622/584 -f 1210/576/539 2689/575/538 2692/623/585 -f 1256/624/586 2692/623/585 2693/625/587 -f 1260/627/589 1258/626/588 2693/625/587 -f 1255/629/591 1260/1611/589 2694/630/590 -f 875/631/592 408/1310/639 490/632/593 -f 407/634/595 410/666/624 876/635/596 -f 491/636/402 411/1282/46 834/637/597 -f 835/639/599 410/666/624 407/634/595 -f 881/640/600 441/1280/985 414/641/601 -f 439/643/603 440/679/603 882/644/604 -f 427/441/413 426/440/412 588/646/605 -f 459/559/522 593/873/755 582/648/607 -f 417/650/609 580/924/796 848/651/610 -f 426/440/412 429/563/526 591/652/611 -f 424/355/330 586/660/619 964/653/612 -f 878/654/613 416/685/406 579/655/614 -f 422/81/60 584/658/617 585/657/616 -f 420/649/608 582/648/607 584/658/617 -f 421/69/48 427/441/413 589/647/606 -f 423/564/527 585/657/616 586/660/619 -f 425/661/620 587/881/763 579/662/614 -f 458/663/621 592/888/770 891/664/622 -f 410/666/624 438/678/603 880/667/604 -f 442/668/86 445/1278/86 841/669/625 -f 412/671/45 443/1279/86 839/672/625 -f 444/673/521 415/686/520 836/674/626 -f 879/645/604 435/1308/457 434/676/457 -f 881/640/600 437/1309/408 436/677/457 -f 838/670/625 439/643/603 438/678/603 -f 840/675/627 441/1280/985 440/679/603 -f 494/680/628 501/439/411 427/441/413 -f 495/681/15 492/683/15 445/682/86 -f 492/683/15 513/556/15 444/558/521 -f 886/684/629 500/792/407 416/685/406 -f 415/686/520 460/4015/49 842/687/630 -f 414/641/601 458/1277/621 883/688/623 -f 521/560/523 459/559/522 420/649/608 -f 52/519/486 53/515/482 447/360/335 -f 53/515/482 54/509/476 448/359/334 -f 54/509/476 55/505/472 449/358/333 -f 55/505/472 56/77/56 450/357/332 -f 56/77/56 2664/76/55 2695/689/631 -f 57/12/12 58/11/11 452/351/327 -f 58/11/11 59/541/508 453/350/326 -f 59/541/508 60/536/503 454/349/325 -f 60/536/503 61/532/499 455/348/324 -f 61/532/499 62/528/495 456/347/323 -f 62/528/495 63/524/491 457/346/322 -f 63/524/491 52/519/486 446/361/336 -f 514/690/632 522/68/47 460/70/49 -f 572/691/633 491/636/402 843/638/598 -f 884/633/594 490/632/593 571/693/635 -f 523/427/15 491/428/402 572/695/633 -f 524/697/638 490/870/593 408/698/639 -f 51/699/640 618/761/689 615/700/641 -f 536/702/643 650/997/837 651/703/644 -f 31/705/646 623/856/742 622/706/647 -f 10/708/649 634/713/654 635/709/650 -f 35/710/651 33/707/648 622/706/647 -f 11/712/653 633/720/661 634/713/654 -f 380/714/655 614/4016/688 613/715/656 -f 37/717/658 35/710/651 621/711/652 -f 12/719/660 632/724/665 633/720/661 -f 37/717/658 619/718/659 620/721/662 -f 1/723/664 611/744/673 632/724/665 -f 16/725/666 14/722/663 620/721/662 -f 575/727/15 473/15/15 484/40/32 -f 558/728/32 484/40/32 483/36/31 -f 557/729/31 483/36/31 482/34/30 -f 556/730/30 482/34/30 481/32/29 -f 555/731/29 481/32/29 480/30/28 -f 554/732/28 480/30/28 479/27/25 -f 553/733/25 479/27/25 478/29/27 -f 2699/735/15 2697/22/15 477/20/20 -f 551/736/20 477/20/20 476/18/18 -f 550/737/18 476/18/18 475/16/16 -f 549/738/16 475/16/16 474/13/13 -f 548/739/13 474/13/13 473/15/15 -f 13/740/669 617/746/675 639/741/670 -f 2/743/672 612/750/679 611/744/673 -f 378/745/674 616/751/680 617/746/675 -f 18/747/676 16/725/666 631/726/667 -f 3/749/678 641/755/684 612/750/679 -f 379/716/657 613/715/656 616/751/680 -f 20/752/681 18/747/676 630/748/677 -f 4/754/683 640/758/687 641/755/684 -f 20/752/681 629/753/682 628/756/685 -f 5/742/671 639/741/670 640/758/687 -f 381/701/642 615/700/641 614/759/688 -f 51/699/640 22/757/686 628/756/685 -f 24/762/690 627/1302/979 846/763/691 -f 535/765/693 472/4017/1016 461/766/694 -f 471/768/696 472/4017/1016 535/765/693 -f 470/770/698 471/768/696 534/769/697 -f 469/772/700 470/770/698 533/771/699 -f 468/774/702 469/772/700 532/773/701 -f 467/776/704 468/774/702 531/775/703 -f 466/778/706 467/776/704 530/777/705 -f 465/780/708 2696/4018/1011 2698/781/695 -f 464/783/710 465/780/708 528/782/709 -f 463/785/712 464/783/710 527/784/711 -f 462/787/714 463/785/712 526/786/713 -f 461/766/694 462/787/714 525/788/715 -f 760/789/716 756/814/731 523/427/15 -f 752/790/717 755/821/47 522/68/47 -f 904/791/718 736/1153/730 500/792/407 -f 744/793/15 740/800/15 513/556/15 -f 747/794/15 744/793/15 492/683/15 -f 746/795/719 737/811/411 501/439/411 -f 754/796/61 520/82/61 519/354/329 -f 742/798/525 753/1149/938 518/799/720 -f 740/800/15 752/790/717 514/690/632 -f 751/801/721 512/356/331 962/551/517 -f 738/803/723 750/1145/935 507/804/724 -f 504/805/725 570/1272/982 889/806/636 -f 862/808/727 760/1143/716 577/809/637 -f 737/811/411 742/798/525 517/562/525 -f 739/812/729 511/431/405 500/433/407 -f 756/814/731 749/822/736 499/65/15 -f 813/815/732 529/4019/707 887/816/733 -f 743/797/329 519/354/329 512/356/331 -f 735/818/15 748/819/15 497/108/15 -f 748/819/15 747/794/15 495/681/15 -f 741/820/735 515/80/59 520/82/61 -f 755/821/47 746/795/719 494/680/628 -f 735/818/15 496/353/15 499/65/15 -f 969/823/737 738/803/723 506/510/477 -f 745/824/738 493/1/1 845/3/3 -f 759/826/732 578/4020/930 524/697/638 -f 844/810/728 577/809/637 572/828/633 -f 573/767/695 525/788/715 383/830/530 -f 525/788/715 526/786/713 384/832/532 -f 526/786/713 527/784/711 385/833/534 -f 527/784/711 528/782/709 386/834/536 -f 528/782/709 2698/781/695 2689/835/538 -f 529/779/707 530/777/705 389/836/545 -f 530/777/705 531/775/703 390/838/547 -f 531/775/703 532/773/701 391/839/549 -f 532/773/701 533/771/699 392/840/551 -f 533/771/699 534/769/697 393/841/553 -f 393/841/553 534/769/697 535/765/693 -f 535/765/693 573/767/695 382/831/556 -f 396/843/558 548/739/13 575/727/15 -f 397/845/561 549/738/16 548/739/13 -f 398/846/563 550/737/18 549/738/16 -f 399/847/565 551/736/20 550/737/18 -f 399/847/565 2691/4021/567 2699/735/15 -f 401/848/573 553/733/25 552/734/668 -f 402/850/575 554/732/28 553/733/25 -f 403/851/577 555/731/29 554/732/28 -f 404/852/579 556/730/30 555/731/29 -f 405/853/581 557/729/31 556/730/30 -f 406/854/582 558/728/32 557/729/31 -f 395/844/559 575/727/15 558/728/32 -f 29/855/741 624/860/746 623/856/742 -f 8/9/9 636/8/8 637/857/743 -f 27/859/745 626/864/750 624/860/746 -f 7/858/744 637/857/743 638/861/747 -f 27/859/745 25/1274/983 625/863/749 -f 6/862/748 638/861/747 888/865/751 -f 887/867/733 529/779/707 388/837/544 -f 524/697/638 578/4020/930 571/869/635 -f 589/647/606 588/646/605 600/871/753 -f 593/873/755 609/4022/991 419/874/756 -f 588/646/605 591/652/611 603/875/757 -f 586/660/619 598/880/762 966/876/758 -f 584/658/617 596/878/760 597/877/759 -f 582/648/607 419/874/756 596/878/760 -f 583/659/618 589/647/606 601/872/754 -f 585/657/616 597/877/759 598/880/762 -f 587/881/763 599/1327/990 433/882/764 -f 594/883/765 583/659/618 595/879/761 -f 590/885/767 581/894/774 431/886/768 -f 592/888/770 608/1266/778 898/889/771 -f 961/6/6 428/5/5 590/885/767 -f 842/891/630 460/4023/49 594/892/765 -f 428/5/5 418/511/478 581/894/774 -f 460/70/49 421/69/48 583/659/618 -f 605/895/775 606/920/794 897/896/776 -f 608/898/778 430/908/785 893/899/779 -f 856/901/780 610/4024/766 595/902/761 -f 600/904/753 603/1268/757 855/905/782 -f 595/902/761 601/1269/754 853/907/784 -f 430/908/785 604/1271/981 895/909/786 -f 602/910/769 431/1265/768 850/911/787 -f 607/913/789 432/1270/980 892/914/790 -f 894/897/777 597/1298/759 596/916/760 -f 966/917/758 598/1299/762 897/896/776 -f 605/895/775 604/1271/981 853/907/784 -f 975/919/793 968/1293/989 606/920/794 -f 579/655/614 433/1295/764 892/914/790 -f 849/893/773 594/892/765 610/921/766 -f 965/890/772 590/885/767 602/887/769 -f 580/924/796 432/1270/980 850/911/787 -f 673/925/797 676/965/816 611/926/673 -f 680/928/798 613/935/656 614/929/688 -f 677/931/799 614/4025/688 615/932/641 -f 684/934/801 616/937/680 613/935/656 -f 686/936/802 617/984/675 616/937/680 -f 681/933/800 615/932/641 618/938/689 -f 689/940/804 692/964/815 620/941/662 -f 689/940/804 619/942/659 621/943/652 -f 693/944/805 621/943/652 622/945/647 -f 697/947/807 695/946/806 622/945/647 -f 699/949/808 697/947/807 623/948/742 -f 701/951/809 704/975/822 626/952/750 -f 701/951/809 625/953/749 846/954/691 -f 687/939/803 618/938/689 628/956/685 -f 707/957/811 628/956/685 629/958/682 -f 709/959/812 629/958/682 630/960/677 -f 711/961/813 630/960/677 631/962/667 -f 692/964/815 713/963/814 631/962/667 -f 676/965/816 716/967/817 632/966/665 -f 716/967/817 718/969/818 633/968/661 -f 718/969/818 720/971/819 634/970/654 -f 720/971/819 722/974/821 635/972/650 -f 724/973/820 636/977/8 635/972/650 -f 699/949/808 624/950/746 626/952/750 -f 726/976/823 637/979/743 636/977/8 -f 728/978/824 638/1292/747 637/979/743 -f 705/980/825 627/1263/979 888/981/751 -f 730/983/827 639/986/670 617/984/675 -f 730/983/827 732/987/828 640/985/687 -f 732/987/828 734/989/829 641/988/684 -f 734/989/829 673/925/797 612/927/679 -f 663/4026/887 642/4027/863 900/990/830 -f 642/4027/863 643/4028/884 900/990/830 -f 643/4028/884 672/4029/878 900/990/830 -f 672/4029/878 671/4030/872 900/990/830 -f 671/4030/872 670/4031/866 648/4032/886 -f 648/4032/886 647/4033/883 644/4034/870 -f 644/4034/870 645/4035/877 646/4036/889 -f 646/4036/889 649/4037/860 659/991/831 -f 659/991/831 660/4038/875 858/992/832 -f 660/4038/875 661/4039/881 858/992/832 -f 661/4039/881 662/4040/885 858/992/832 -f 662/4040/885 651/4041/644 858/992/832 -f 651/4041/644 650/4042/837 858/992/832 -f 650/4042/837 652/4043/841 858/992/832 -f 652/4043/841 653/4044/845 858/992/832 -f 653/4044/845 654/4045/844 858/992/832 -f 654/4045/844 655/4046/847 858/992/832 -f 655/4046/847 657/4047/853 858/992/832 -f 657/4047/853 656/4048/978 858/992/832 -f 858/992/832 658/4049/988 900/990/830 -f 900/990/830 669/4050/854 668/4051/850 -f 668/4051/850 667/4052/842 900/990/830 -f 667/4052/842 666/4053/838 900/990/830 -f 666/4053/838 665/4054/835 900/990/830 -f 665/4054/835 664/4055/834 900/990/830 -f 664/4055/834 663/4026/887 900/990/830 -f 671/4030/872 648/4032/886 900/990/830 -f 648/4032/886 644/4034/870 900/990/830 -f 644/4034/870 646/4036/889 900/990/830 -f 646/4036/889 659/991/831 900/990/830 -f 562/993/833 561/1054/890 664/994/834 -f 537/996/836 652/1001/841 650/997/837 -f 562/993/833 665/995/835 666/998/838 -f 538/1000/840 653/1005/845 652/1001/841 -f 563/999/839 666/998/838 667/1002/842 -f 538/1000/840 539/1009/849 654/1004/844 -f 541/1006/846 657/1013/853 655/1007/847 -f 540/1008/848 655/1007/847 654/1004/844 -f 564/1003/843 667/1002/842 668/1010/850 -f 542/1012/852 656/1262/978 657/1013/853 -f 565/1011/851 668/1010/850 669/1014/854 -f 567/1016/856 658/1291/988 858/1017/832 -f 566/1015/855 669/1014/854 900/1019/830 -f 544/1021/859 659/1031/831 649/1022/860 -f 111/1024/862 643/1048/884 642/1025/863 -f 568/1027/865 648/1050/886 670/1028/866 -f 545/1030/868 660/1038/875 659/1031/831 -f 485/1032/869 645/4056/877 644/1033/870 -f 569/1029/867 670/1028/866 671/1035/872 -f 546/1037/874 661/1045/881 660/1038/875 -f 488/1039/876 646/1053/889 645/1040/877 -f 574/1036/873 671/1035/872 672/1042/878 -f 547/1044/880 662/1049/885 661/1045/881 -f 487/1046/882 486/1034/871 644/1033/870 -f 111/1024/862 576/1043/879 672/1042/878 -f 559/704/645 651/703/644 662/1049/885 -f 487/1046/882 647/1047/883 648/1050/886 -f 112/1026/864 642/1025/863 663/1051/887 -f 488/1039/876 543/1023/861 649/1022/860 -f 560/1052/888 663/1051/887 664/994/834 -f 111/1055/862 674/1120/922 733/1056/891 -f 733/1056/891 674/1120/922 673/925/797 -f 576/1057/879 733/1056/891 731/1058/892 -f 733/1056/891 734/989/829 732/987/828 -f 569/1060/867 574/1059/873 731/1058/892 -f 731/1058/892 732/987/828 730/983/827 -f 569/1060/867 729/1061/893 685/1062/894 -f 685/1062/894 729/1061/893 730/983/827 -f 567/1064/856 706/1067/896 901/1065/895 -f 706/1067/896 705/980/825 902/982/826 -f 566/1068/855 727/1290/987 725/1069/897 -f 725/1069/897 727/1290/987 728/978/824 -f 565/1070/851 725/1069/897 723/1071/898 -f 723/1071/898 725/1069/897 726/976/823 -f 540/1073/848 700/1076/900 703/1074/899 -f 700/1076/900 699/949/808 704/975/822 -f 563/1077/839 564/1072/843 723/1071/898 -f 723/1071/898 724/973/820 722/974/821 -f 563/1077/839 721/1078/901 719/1079/902 -f 719/1079/902 721/1078/901 722/974/821 -f 561/1081/890 562/1080/833 719/1079/902 -f 717/1082/903 719/1079/902 720/971/819 -f 561/1081/890 717/1082/903 715/1083/904 -f 715/1083/904 717/1082/903 718/969/818 -f 560/1084/888 715/1083/904 675/1085/905 -f 675/1085/905 715/1083/904 716/967/817 -f 547/1087/880 714/1090/907 691/1088/906 -f 714/1090/907 713/963/814 692/964/815 -f 546/1091/874 712/1093/908 714/1090/907 -f 714/1090/907 712/1093/908 711/961/813 -f 545/1092/868 710/1095/909 712/1093/908 -f 712/1093/908 710/1095/909 709/959/812 -f 544/1094/859 708/1097/910 710/1095/909 -f 710/1095/909 708/1097/910 707/957/811 -f 543/1096/861 688/1111/918 708/1097/910 -f 708/1097/910 688/1111/918 687/939/803 -f 542/1098/852 702/1101/912 859/1099/911 -f 702/1101/912 701/951/809 860/955/810 -f 542/1098/852 541/1075/846 703/1074/899 -f 703/1074/899 704/975/822 701/951/809 -f 540/1073/848 539/1104/849 698/1102/913 -f 698/1102/913 697/947/807 699/949/808 -f 538/1103/840 696/1105/914 698/1102/913 -f 696/1105/914 695/946/806 697/947/807 -f 537/1106/836 694/1107/915 696/1105/914 -f 694/1107/915 693/944/805 695/946/806 -f 536/1108/643 690/1109/916 694/1107/915 -f 694/1107/915 690/1109/916 689/940/804 -f 536/1108/643 559/1089/645 691/1088/906 -f 691/1088/906 692/964/815 689/940/804 -f 543/1096/861 488/1116/876 682/1110/917 -f 682/1110/917 681/933/800 687/939/803 -f 568/1063/865 685/1062/894 683/1112/919 -f 683/1112/919 685/1062/894 686/936/802 -f 486/1114/871 487/1113/882 683/1112/919 -f 679/1115/920 683/1112/919 684/934/801 -f 488/1116/876 485/4057/869 678/1117/921 -f 678/1117/921 677/931/799 681/933/800 -f 485/1118/869 486/1114/871 679/1115/920 -f 679/1115/920 680/928/798 677/930/799 -f 111/1055/862 112/1086/864 675/1085/905 -f 675/1085/905 676/965/816 673/925/797 -f 810/1121/740 814/1244/732 759/826/732 -f 788/1122/923 745/824/738 861/825/739 -f 974/1124/925 773/1144/934 738/803/723 -f 767/1125/15 735/818/15 749/822/736 -f 808/1127/47 790/1150/719 746/795/719 -f 779/1128/927 741/820/735 754/796/61 -f 792/1130/15 747/794/15 748/819/15 -f 794/1131/15 748/819/15 735/818/15 -f 783/1132/928 743/797/329 751/801/721 -f 578/1134/930 759/1245/732 903/1135/734 -f 478/1136/27 762/1167/947 763/1137/931 -f 775/1139/932 739/812/729 736/813/730 -f 771/1141/411 781/1148/937 742/798/525 -f 864/1142/727 823/1222/966 760/1143/716 -f 773/1144/934 798/1218/964 750/1145/935 -f 800/1133/929 751/801/721 970/802/722 -f 777/1147/15 802/1154/717 752/790/717 -f 781/1148/937 804/1210/959 753/1149/938 -f 806/1129/61 754/796/61 743/797/329 -f 790/1150/719 771/1141/411 737/811/411 -f 786/1151/15 744/793/15 747/794/15 -f 777/1147/15 740/800/15 744/793/15 -f 906/1152/939 769/1193/933 736/1153/730 -f 802/1154/717 808/1127/47 755/821/47 -f 756/1155/731 765/1169/942 764/1156/940 -f 820/1158/941 818/1186/945 764/1159/940 -f 820/1158/941 765/1160/942 766/1161/943 -f 796/1163/926 749/4058/736 764/1164/940 -f 478/1136/27 26/4059/26 761/1166/946 -f 760/1168/716 766/4060/943 765/1169/942 -f 824/1170/948 552/4061/668 763/1171/931 -f 760/1173/716 816/1176/950 822/1174/944 -f 816/1176/950 824/1170/948 821/1172/949 -f 795/1177/951 817/1180/952 761/1178/946 -f 795/1177/951 796/1163/926 818/1165/945 -f 763/1181/931 762/1184/947 819/1182/953 -f 819/1182/953 820/1158/941 822/1162/944 -f 762/1184/947 761/4062/946 817/1185/952 -f 819/1182/953 817/1185/952 818/1186/945 -f 57/1187/12 451/1234/328 807/1188/47 -f 801/1189/717 807/1188/47 808/1127/47 -f 69/1190/404 770/4063/968 905/1191/954 -f 905/1191/954 770/4063/968 769/1193/933 -f 332/1194/10 778/1197/15 785/1195/15 -f 778/1197/15 777/1147/15 786/1151/15 -f 333/1196/519 785/1195/15 791/1198/15 -f 785/1195/15 786/1151/15 792/1130/15 -f 222/1200/114 259/1223/113 772/1201/956 -f 789/1202/719 772/1201/956 771/1141/411 -f 304/1203/398 805/1206/957 784/1204/928 -f 805/1206/957 806/1129/61 783/1132/928 -f 258/1207/410 261/1326/409 803/1208/958 -f 782/1209/937 803/1208/958 804/1210/959 -f 57/1187/12 801/1189/717 778/1197/15 -f 801/1189/717 802/1154/717 777/1147/15 -f 302/1211/91 799/1214/961 971/1212/960 -f 799/1214/961 800/1133/929 972/1146/936 -f 260/1215/85 79/4064/84 797/1216/962 -f 774/1217/963 797/1216/962 798/1218/964 -f 832/1219/965 552/4065/668 815/1220/966 -f 863/1221/727 815/1220/966 823/1222/966 -f 259/1223/113 258/1207/410 782/1209/937 -f 772/1201/956 782/1209/937 781/1148/937 -f 303/1224/967 776/1227/969 770/1225/968 -f 776/1227/969 775/1139/932 769/1140/933 -f 305/1205/454 784/1204/928 799/1214/961 -f 784/1204/928 783/1132/928 800/1133/929 -f 331/1228/524 793/1231/15 768/1229/15 -f 793/1231/15 794/1131/15 767/1125/15 -f 330/1199/518 791/1198/15 793/1231/15 -f 791/1198/15 792/1130/15 794/1131/15 -f 223/1232/970 780/1233/971 805/1206/957 -f 780/1233/971 779/1128/927 806/1129/61 -f 451/1234/328 222/1200/114 789/1202/719 -f 807/1188/47 789/1202/719 790/1150/719 -f 44/1230/528 768/1229/15 795/1235/951 -f 768/1229/15 767/1125/15 796/1126/926 -f 954/1237/456 260/1215/85 774/1217/963 -f 973/1238/972 774/1217/963 773/1144/934 -f 78/1239/973 787/1242/976 865/1240/974 -f 787/1242/976 788/1122/923 866/1123/924 -f 529/779/707 813/4066/732 809/1243/740 -f 809/1243/740 813/4066/732 814/1244/732 -f 759/1245/732 814/1247/732 907/1246/734 -f 814/1247/732 813/815/732 908/817/734 -f 823/1251/966 815/1249/966 824/1248/948 -f 865/1240/974 866/1123/924 798/1254/964 -f 79/1256/84 826/1241/975 865/1240/974 -f 811/1257/977 863/1221/727 864/1142/727 -f 503/1259/400 832/1219/965 863/1221/727 -f 812/1258/977 864/1142/727 862/808/727 -f 866/1123/924 861/825/739 750/1261/935 -f 706/1067/896 859/1099/911 860/955/810 -f 567/1064/856 857/1100/857 859/1099/911 -f 857/1018/857 858/1017/832 656/1262/978 -f 705/980/825 860/955/810 846/954/691 -f 581/1264/774 848/651/610 850/911/787 -f 849/893/773 856/922/780 608/1266/778 -f 967/1267/795 975/919/793 855/905/782 -f 852/906/783 853/907/784 601/1269/754 -f 607/913/789 854/912/788 850/911/787 -f 430/908/785 851/903/781 853/907/784 -f 605/895/775 852/906/783 855/905/782 -f 608/898/778 856/901/780 851/903/781 -f 842/891/630 849/893/773 592/888/770 -f 844/810/728 847/829/634 570/1272/982 -f 861/825/739 845/3/3 507/1273/724 -f 758/1260/977 862/808/727 844/810/728 -f 25/1274/983 833/764/692 846/763/691 -f 847/692/634 843/638/598 489/1275/984 -f 414/641/601 836/674/626 842/687/630 -f 840/675/627 841/669/625 445/1278/86 -f 838/670/625 839/672/625 443/1279/86 -f 840/675/627 836/674/626 414/641/601 -f 410/666/624 835/639/599 839/672/625 -f 838/670/625 841/669/625 440/679/603 -f 837/2/2 848/651/610 581/1264/774 -f 411/1282/46 412/671/45 835/639/599 -f 843/638/598 834/637/597 407/634/595 -f 1215/577/540 1263/607/569 825/606/399 -f 400/849/571 552/734/668 832/1284/965 -f 155/226/202 830/308/284 831/302/278 -f 153/310/286 828/300/276 829/303/279 -f 830/308/284 1032/309/285 1019/1285/207 -f 827/170/146 829/303/279 159/1286/282 -f 828/300/276 831/302/278 157/1288/204 -f 934/168/144 827/170/146 103/1287/148 -f 845/3/3 837/2/2 418/1281/478 -f 907/1246/734 908/817/734 811/1257/977 -f 903/1135/734 907/1246/734 812/1258/977 -f 787/1242/976 905/1191/954 906/1152/939 -f 78/1239/973 868/1192/955 905/1191/954 -f 788/1122/923 906/1152/939 904/791/718 -f 885/807/726 903/1135/734 758/1260/977 -f 727/1290/987 901/1065/895 902/982/826 -f 566/1068/855 899/1066/858 901/1065/895 -f 899/1020/858 900/1019/830 658/1291/988 -f 728/978/824 902/982/826 888/981/751 -f 890/656/615 892/914/790 432/1270/980 -f 976/918/792 897/896/776 606/920/794 -f 605/895/775 894/897/777 895/909/786 -f 599/1294/990 896/915/791 892/914/790 -f 419/1296/756 893/899/779 895/909/786 -f 898/900/771 893/899/779 419/1296/756 -f 597/1298/759 894/897/777 897/896/776 -f 891/664/622 898/889/771 609/1300/991 -f 503/425/400 887/867/733 867/868/541 -f 874/866/752 888/865/751 627/1302/979 -f 908/817/734 887/816/733 503/1259/400 -f 885/807/726 889/806/636 571/1303/635 -f 745/824/738 904/791/718 886/684/629 -f 489/1275/984 884/633/594 889/694/636 -f 413/1304/514 877/642/602 883/688/623 -f 493/1/1 886/684/629 878/654/613 -f 881/640/600 882/644/604 440/679/603 -f 879/645/604 880/667/604 438/678/603 -f 409/1306/24 876/635/596 880/667/604 -f 883/665/623 891/664/622 593/1301/755 -f 878/654/613 890/656/615 580/924/796 -f 435/1308/457 879/645/604 882/644/604 -f 437/1309/408 881/640/600 877/642/602 -f 408/1310/639 875/631/592 876/635/596 -f 407/634/595 875/631/592 884/633/594 -f 1212/1311/992 1265/579/542 867/578/541 -f 158/1312/319 872/230/206 873/229/205 -f 160/1313/318 870/227/203 871/307/283 -f 869/173/149 871/307/283 163/340/316 -f 872/230/206 1018/232/208 1021/305/281 -f 870/227/203 873/229/205 161/234/210 -f 935/171/147 869/173/149 91/177/153 -f 868/1315/955 935/171/147 921/1314/993 -f 826/1316/975 934/168/144 920/1289/986 -f 64/101/79 75/100/78 933/197/173 -f 76/465/436 910/148/124 932/195/171 -f 75/100/78 74/390/365 931/193/169 -f 85/381/356 932/195/171 930/191/167 -f 74/390/365 73/398/373 929/189/165 -f 84/387/362 930/191/167 928/187/163 -f 73/398/373 72/406/381 927/185/161 -f 83/395/370 928/187/163 926/183/159 -f 72/406/381 71/414/389 925/181/157 -f 82/403/378 926/183/159 924/179/155 -f 71/414/389 70/421/396 923/176/152 -f 81/411/386 924/179/155 922/174/150 -f 70/421/396 69/430/404 921/1314/993 -f 80/419/394 922/174/150 919/175/151 -f 868/1315/955 78/4067/973 920/1318/986 -f 826/1316/975 79/106/84 919/175/151 -f 2665/372/347 68/449/420 918/162/138 -f 994/1319/994 988/1463/1036 2706/1320/995 -f 68/449/420 67/94/72 912/149/125 -f 65/444/415 64/101/79 916/200/176 -f 66/366/341 65/444/415 914/158/134 -f 915/1322/132 1002/1459/1047 993/1323/997 -f 67/94/72 66/366/341 911/154/130 -f 77/1325/998 909/146/122 910/148/124 -f 896/915/791 976/918/792 968/1293/989 -f 602/910/769 854/912/788 975/919/793 -f 803/1208/958 973/1238/972 974/1124/925 -f 261/1326/409 954/1237/456 973/1238/972 -f 971/1212/960 972/1146/936 775/1139/932 -f 953/1213/455 971/1212/960 776/1227/969 -f 972/1146/936 970/802/722 739/812/729 -f 804/1210/959 974/1124/925 969/823/737 -f 591/652/611 965/890/772 967/923/795 -f 854/912/788 607/913/789 968/1293/989 -f 599/1294/990 966/917/758 976/918/792 -f 429/563/526 961/6/6 965/890/772 -f 964/653/612 966/876/758 599/1327/990 -f 753/1149/938 969/823/737 963/4/4 -f 970/802/722 962/551/517 511/431/405 -f 960/550/516 964/653/612 587/881/763 -f 962/551/517 960/550/516 425/661/620 -f 239/464/435 291/380/355 941/472/443 -f 295/371/346 955/491/459 938/469/440 -f 1000/1328/999 996/458/429 989/460/431 -f 299/365/340 936/468/439 940/492/460 -f 2682/373/348 2702/490/458 955/491/459 -f 260/107/85 954/485/456 952/482/453 -f 303/1330/967 307/429/403 951/481/452 -f 264/105/83 952/482/453 950/480/451 -f 307/429/403 311/420/395 949/479/450 -f 268/412/387 950/480/451 948/478/449 -f 311/420/395 315/413/388 947/477/448 -f 272/404/379 948/478/449 946/476/447 -f 315/413/388 319/405/380 945/475/446 -f 276/396/371 946/476/447 944/474/445 -f 319/405/380 323/397/372 943/473/444 -f 280/388/363 944/474/445 942/471/442 -f 323/397/372 327/389/364 939/470/441 -f 284/382/357 942/471/442 941/472/443 -f 327/389/364 256/99/77 940/492/460 -f 252/95/73 938/469/440 937/467/438 -f 288/93/71 937/467/438 936/468/439 -f 518/799/720 963/4/4 961/6/6 -f 956/1331/461 995/1465/1048 999/1332/1001 -f 218/1334/74 1087/1354/1007 1091/1335/1002 -f 780/1337/971 1152/1365/1009 1193/1338/1003 -f 757/1340/740 524/4068/638 1175/1341/1004 -f 236/1336/117 1091/1335/1002 1092/1343/1005 -f 779/1339/927 1193/1338/1003 1183/1345/1006 -f 505/1347/23 508/1379/23 1167/1348/23 -f 462/1350/714 461/1403/694 1042/1351/740 -f 219/1353/344 1100/1369/1010 1087/1354/1007 -f 502/1355/23 510/1383/23 1169/1356/23 -f 462/1350/714 1153/1352/740 1154/1358/740 -f 463/1359/712 1154/1358/740 1155/1360/740 -f 221/1344/351 1092/1343/1005 1089/1362/1008 -f 223/1364/970 1099/1390/1013 1152/1365/1009 -f 464/1361/710 1155/1360/740 1156/1366/740 -f 2677/1368/414 2718/1544/1010 1100/1369/1010 -f 509/1370/23 505/1347/23 1179/1349/23 -f 465/1367/708 1156/1366/740 2723/1372/740 -f 467/1374/704 466/1391/706 1157/1375/740 -f 741/1346/735 1183/1345/1006 1177/1377/1012 -f 508/1379/23 516/1398/515 1171/1380/23 -f 468/1381/702 467/1374/704 1158/1376/740 -f 510/1383/23 509/1370/23 1178/1371/23 -f 809/1384/740 810/1402/740 1189/1385/740 -f 469/1387/700 468/1381/702 1159/1382/740 -f 225/1389/397 1098/1397/1014 1099/1390/1013 -f 466/1391/706 809/1384/740 1199/1386/740 -f 470/1392/698 469/1387/700 1160/1388/740 -f 471/1394/696 470/1392/698 1161/1393/740 -f 227/1396/390 1097/1405/1017 1098/1397/1014 -f 516/1398/515 521/1412/523 1173/1399/1015 -f 472/1400/1016 471/1394/696 1162/1395/740 -f 810/1402/740 757/1340/740 1174/1342/740 -f 461/1403/694 472/1400/1016 1163/1401/740 -f 229/1404/382 1096/1407/1018 1097/1405/1017 -f 231/1406/374 1095/1411/1019 1096/1407/1018 -f 498/1408/23 502/1355/23 1165/1357/23 -f 233/1410/366 1094/1414/1020 1095/1411/1019 -f 521/1412/523 515/4069/59 1177/1377/1012 -f 235/1413/358 1093/1415/1021 1094/1414/1020 -f 220/1363/119 1089/1362/1008 1093/1415/1021 -f 524/1416/638 498/1408/23 1176/1409/23 -f 239/1417/435 959/4070/466 1010/1418/1022 -f 239/1417/435 998/1419/1023 1007/1420/1024 -f 957/1333/464 999/1332/1001 1011/1422/1025 -f 909/1424/122 1006/1470/1027 1003/1425/1026 -f 77/1421/998 1007/1420/1024 1006/1427/1027 -f 958/1423/465 1011/1422/1025 1010/1429/1022 -f 984/1431/426 983/1439/1035 977/1432/1028 -f 981/1434/1030 2705/1448/1041 2704/1435/1031 -f 982/1437/1033 981/1434/1030 980/1436/1032 -f 983/1439/1035 982/1437/1033 979/1438/1034 -f 2704/1435/1031 2706/4071/995 988/1440/1036 -f 980/1436/1032 988/1440/1036 987/1441/1037 -f 979/1438/1034 987/1441/1037 986/1442/1038 -f 977/1432/1028 986/1442/1038 985/1443/1039 -f 983/1439/1035 984/1431/426 992/1444/425 -f 982/1437/1033 983/1439/1035 991/1445/1040 -f 981/1434/1030 982/1437/1033 990/1446/1000 -f 2705/1448/1041 981/1434/1030 989/1447/431 -f 1009/1450/1042 1012/1468/1050 991/1451/1040 -f 1008/1453/1043 978/1460/1029 985/1454/1039 -f 1004/1456/1045 986/1462/1038 987/1457/1037 -f 913/1426/128 1003/1425/1026 1002/1459/1047 -f 1008/1453/1043 997/453/424 984/455/426 -f 1005/1461/1044 985/4072/1039 986/1462/1038 -f 1001/1458/1046 987/1457/1037 988/1463/1036 -f 2703/1464/463 2708/1472/1052 995/1465/1048 -f 917/1324/136 993/1323/997 2710/1466/1049 -f 1012/1468/1050 1000/1328/999 990/1329/1000 -f 1012/1468/1050 1009/1450/1042 1010/1429/1022 -f 1005/1455/1044 1006/1427/1027 1007/1420/1024 -f 1001/1458/1046 1002/1459/1047 1003/1425/1026 -f 1000/1328/999 1012/1468/1050 1011/1422/1025 -f 1009/1469/1042 997/453/424 998/1419/1023 -f 1000/1328/999 999/1332/1001 995/1465/1048 -f 1004/1456/1045 1003/1425/1026 1006/1470/1027 -f 2709/1471/1051 996/458/429 995/1465/1048 -f 2711/1321/996 2710/1466/1049 993/1323/997 -f 994/1319/994 993/1323/997 1002/1459/1047 -f 997/453/424 1008/1453/1043 1007/1420/1024 -f 1041/1473/695 1040/1474/695 1153/1352/740 -f 1040/1474/695 1043/1475/695 1154/1358/740 -f 1043/1475/695 1044/1476/695 1155/1360/740 -f 1044/1476/695 1045/1477/695 1156/1366/740 -f 1045/1477/695 2714/1485/695 2723/1372/740 -f 1047/1478/695 1046/1479/695 1158/1376/740 -f 1046/1479/695 1048/1480/695 1159/1382/740 -f 1048/1480/695 1049/1481/695 1160/1388/740 -f 1049/1481/695 1050/1482/695 1161/1393/740 -f 1050/1482/695 1051/1483/695 1162/1395/740 -f 1051/1483/695 1052/1494/695 1163/1401/740 -f 1163/1401/740 1052/1494/695 1041/1473/695 -f 1050/1482/695 1062/1497/695 1063/1484/695 -f 2714/1485/695 1045/1477/695 1057/1486/695 -f 1049/1481/695 1048/1480/695 1060/1488/695 -f 1044/1476/695 1043/1475/695 1055/1490/695 -f 1047/1478/695 1059/1549/695 1058/1492/695 -f 1051/1483/695 1063/1484/695 1064/1493/695 -f 1040/1474/695 1041/1473/695 1054/1495/695 -f 1049/1481/695 1061/1489/695 1062/1497/695 -f 1045/1477/695 1044/1476/695 1056/1491/695 -f 1046/1479/695 1058/1492/695 1060/1488/695 -f 1052/1494/695 1064/1493/695 1054/1495/695 -f 1043/1475/695 1040/1474/695 1053/1496/695 -f 1109/1498/695 1070/1527/695 1072/1499/695 -f 1149/1501/695 1150/1547/695 1146/1502/695 -f 1145/1503/695 1146/1502/695 1142/1504/695 -f 1147/1506/695 1074/1532/695 1075/1507/695 -f 1141/1505/695 1142/1504/695 1138/1509/695 -f 1139/1511/695 1076/1569/695 1068/1512/695 -f 1137/1510/695 1138/1509/695 1134/1514/695 -f 1135/1513/695 1068/1512/695 1067/1516/695 -f 1133/1515/695 1134/1514/695 1130/1518/695 -f 1129/1519/695 1130/1518/695 1126/1520/695 -f 1125/1521/695 1126/1520/695 1122/1522/695 -f 1121/1523/695 1122/1522/695 1118/1524/695 -f 1114/1526/695 1071/1595/695 1070/1527/695 -f 1113/1528/695 1103/1575/695 1108/1529/695 -f 1151/1531/695 1073/1572/695 1074/1532/695 -f 1078/1533/695 1092/1343/1005 1091/1335/1002 -f 1090/1534/695 1091/1335/1002 1087/1354/1007 -f 1085/1536/695 1093/1415/1021 1089/1362/1008 -f 1084/1538/695 1094/1414/1020 1093/1415/1021 -f 1083/1539/695 1095/1411/1019 1094/1414/1020 -f 1082/1540/695 1096/1407/1018 1095/1411/1019 -f 1081/1541/695 1097/1405/1017 1096/1407/1018 -f 1080/1542/695 1098/1397/1014 1097/1405/1017 -f 1080/1542/695 1079/1576/695 1099/1390/1013 -f 1077/1543/695 1100/1369/1010 2718/1544/1010 -f 1088/1537/695 1089/1362/1008 1092/1343/1005 -f 1086/1535/695 1087/1354/1007 1100/1369/1010 -f 1106/1546/695 1111/1573/695 1150/1547/695 -f 1060/1488/695 1107/1551/695 1148/1548/695 -f 1059/1549/695 1112/1574/695 1104/1550/695 -f 1058/1492/695 1104/1550/695 1107/1551/695 -f 1117/1525/695 1118/1524/695 2722/1552/695 -f 1119/1554/695 1069/1559/695 2716/1555/695 -f 1056/1491/695 1120/1560/695 1116/1557/695 -f 1123/1558/695 1065/1562/695 1069/1559/695 -f 1055/1490/695 1124/1563/695 1120/1560/695 -f 1127/1561/695 1066/1564/695 1065/1562/695 -f 1053/1496/695 1128/1565/695 1124/1563/695 -f 1131/1517/695 1067/1516/695 1066/1564/695 -f 1054/1495/695 1132/1567/695 1128/1565/695 -f 1057/1486/695 1116/1557/695 2720/1566/695 -f 1064/1493/695 1136/1568/695 1132/1567/695 -f 1063/1484/695 1140/1570/695 1136/1568/695 -f 1143/1508/695 1075/1507/695 1076/1569/695 -f 1062/1497/695 1144/1571/695 1140/1570/695 -f 1061/1489/695 1148/1548/695 1144/1571/695 -f 1110/1500/695 1072/1499/695 1073/1572/695 -f 1105/1530/695 1108/1529/695 1111/1573/695 -f 1106/1546/695 1107/1551/695 1104/1550/695 -f 1110/1500/695 1111/1573/695 1108/1529/695 -f 1105/1530/695 1104/1550/695 1112/1574/695 -f 1109/1498/695 1108/1529/695 1103/1575/695 -f 2719/1553/695 2720/1566/695 1116/1557/695 -f 2721/1556/695 2722/1552/695 1118/1524/695 -f 1117/1525/695 1116/1557/695 1120/1560/695 -f 1119/1554/695 1118/1524/695 1122/1522/695 -f 1121/1523/695 1120/1560/695 1124/1563/695 -f 1123/1558/695 1122/1522/695 1126/1520/695 -f 1125/1521/695 1124/1563/695 1128/1565/695 -f 1127/1561/695 1126/1520/695 1130/1518/695 -f 1129/1519/695 1128/1565/695 1132/1567/695 -f 1131/1517/695 1130/1518/695 1134/1514/695 -f 1133/1515/695 1132/1567/695 1136/1568/695 -f 1135/1513/695 1134/1514/695 1138/1509/695 -f 1137/1510/695 1136/1568/695 1140/1570/695 -f 1139/1511/695 1138/1509/695 1142/1504/695 -f 1141/1505/695 1140/1570/695 1144/1571/695 -f 1143/1508/695 1142/1504/695 1146/1502/695 -f 1145/1503/695 1144/1571/695 1148/1548/695 -f 1147/1506/695 1146/1502/695 1150/1547/695 -f 1149/1501/695 1148/1548/695 1107/1551/695 -f 1151/1531/695 1150/1547/695 1111/1573/695 -f 1065/1562/695 1086/1535/695 1077/1543/695 -f 1068/1512/695 1088/1537/695 1078/1533/695 -f 1069/1559/695 1077/1543/695 2717/1545/695 -f 1070/1527/695 1071/1595/695 1079/1576/695 -f 1070/1527/695 1080/1542/695 1081/1541/695 -f 1072/1499/695 1081/1541/695 1082/1540/695 -f 1073/1572/695 1082/1540/695 1083/1539/695 -f 1074/1532/695 1083/1539/695 1084/1538/695 -f 1075/1507/695 1084/1538/695 1085/1536/695 -f 1076/1569/695 1085/1536/695 1088/1537/695 -f 1066/1564/695 1090/1534/695 1086/1535/695 -f 1067/1516/695 1078/1533/695 1090/1534/695 -f 1174/1342/740 1175/1341/1004 1176/1409/23 -f 1172/1578/695 1173/1399/1015 1177/1377/1012 -f 1170/1579/695 1171/1380/23 1173/1399/1015 -f 1182/1580/695 1168/1583/695 1169/1356/23 -f 1166/1581/695 1167/1348/23 1171/1380/23 -f 1181/1582/695 1182/1580/695 1178/1371/23 -f 1168/1583/695 1164/1584/695 1165/1357/23 -f 1166/1581/695 1181/1582/695 1179/1349/23 -f 1180/1577/695 1176/1409/23 1165/1357/23 -f 1190/1585/695 1180/1577/695 1164/1584/695 -f 1185/1587/695 1191/1589/695 1181/1582/695 -f 1186/1588/695 1184/1586/695 1164/1584/695 -f 1191/1589/695 1192/1591/695 1182/1580/695 -f 1185/1587/695 1166/1581/695 1170/1579/695 -f 1192/1591/695 1186/1588/695 1168/1583/695 -f 1187/1590/695 1170/1579/695 1172/1578/695 -f 1188/1592/695 1172/1578/695 1183/1345/1006 -f 1189/1385/740 1174/1342/740 1180/1577/695 -f 1047/1478/695 1157/1375/740 1199/1386/740 -f 1101/1593/695 1199/1386/740 1189/1385/740 -f 1079/1576/695 1198/1594/695 1152/1365/1009 -f 1198/1594/695 1188/1592/695 1193/1338/1003 -f 1071/1595/695 1197/1596/695 1198/1594/695 -f 1197/1596/695 1187/1590/695 1188/1592/695 -f 1113/1528/695 1112/1574/695 1196/1597/695 -f 1115/1598/695 1196/1597/695 1186/1588/695 -f 1071/1595/695 1114/1526/695 1195/1599/695 -f 1197/1596/695 1195/1599/695 1185/1587/695 -f 1103/1575/695 1113/1528/695 1115/1598/695 -f 1102/1600/695 1115/1598/695 1192/1591/695 -f 1112/1574/695 1059/1549/695 1194/1601/695 -f 1196/1597/695 1194/1601/695 1184/1586/695 -f 1114/1526/695 1103/1575/695 1102/1600/695 -f 1195/1599/695 1102/1600/695 1191/1589/695 -f 1047/1478/695 1101/1593/695 1194/1601/695 -f 1101/1593/695 1190/1585/695 1184/1586/695 -f 6/1602/748 874/1661/752 1264/1603/1053 -f 1213/1604/1054 1264/1603/1053 1265/579/542 -f 24/1605/690 833/1637/692 1262/1606/1055 -f 1214/1607/1056 1262/1606/1055 1263/607/569 -f 381/1608/642 380/4073/655 1261/1609/1057 -f 1254/1610/1058 1261/1609/1057 1260/1611/589 -f 380/1612/655 379/1616/657 1259/1613/1059 -f 1261/1614/1057 1259/1613/1059 1258/626/588 -f 378/1615/674 1257/1617/1060 1259/1613/1059 -f 1257/1617/1060 1256/624/586 1258/626/588 -f 13/1618/669 1211/1619/1061 1257/1617/1060 -f 1211/1619/1061 1210/576/539 1256/624/586 -f 51/1620/640 381/1608/642 1254/1610/1058 -f 1238/1621/1062 1254/1610/1058 1255/629/591 -f 37/1622/658 14/1646/663 1229/1623/1063 -f 1252/1624/1064 1229/1623/1063 1228/594/557 -f 35/1625/651 37/1622/658 1252/1624/1064 -f 1252/1624/1064 1253/618/580 1251/616/578 -f 35/1625/651 1250/1626/1065 1248/1627/1066 -f 1250/1626/1065 1251/616/578 1249/614/576 -f 33/1628/648 1248/1627/1066 1246/1629/1067 -f 1248/1627/1066 1249/614/576 1247/612/574 -f 31/1630/646 1246/1629/1067 1244/1631/1068 -f 1246/1629/1067 1247/612/574 1245/610/572 -f 29/1632/741 1244/1631/1068 1242/1633/1069 -f 1244/1631/1068 1245/610/572 1243/608/570 -f 27/1634/745 1242/1633/1069 1240/1635/1070 -f 1242/1633/1069 1243/608/570 1241/605/568 -f 25/1636/983 1240/1635/1070 1262/1606/1055 -f 1240/1635/1070 1241/605/568 1263/607/569 -f 22/1638/686 51/1620/640 1238/1621/1062 -f 1236/1639/1071 1238/1621/1062 1239/621/583 -f 20/1640/681 22/1638/686 1236/1639/1071 -f 1234/1641/1072 1236/1639/1071 1237/603/566 -f 18/1642/676 20/1640/681 1234/1641/1072 -f 1232/1643/1073 1234/1641/1072 1235/601/564 -f 16/1644/666 18/1642/676 1232/1643/1073 -f 1230/1645/1074 1232/1643/1073 1233/599/562 -f 14/1646/663 16/1644/666 1230/1645/1074 -f 1229/1623/1063 1230/1645/1074 1231/597/560 -f 12/1647/660 1227/1651/1077 1202/1648/1075 -f 1202/1648/1075 1227/1651/1077 1226/591/554 -f 12/1647/660 11/1652/653 1225/1650/1076 -f 1227/1651/1077 1225/1650/1076 1224/589/552 -f 11/1652/653 10/1654/649 1223/1653/1078 -f 1225/1650/1076 1223/1653/1078 1222/587/550 -f 10/1654/649 9/1656/7 1221/1655/1079 -f 1223/1653/1078 1221/1655/1079 1220/585/548 -f 9/1656/7 8/1658/9 1219/1657/1080 -f 1221/1655/1079 1219/1657/1080 1218/583/546 -f 8/1658/9 7/1660/744 1217/1659/1081 -f 1219/1657/1080 1217/1659/1081 1216/580/543 -f 7/1660/744 6/1602/748 1213/1604/1054 -f 1217/1659/1081 1213/1604/1054 1212/1311/992 -f 24/1605/690 1214/1607/1056 1264/1603/1053 -f 1214/1607/1056 1215/577/540 1265/579/542 -f 5/1662/671 1209/1663/1082 1211/1619/1061 -f 1209/1663/1082 1208/574/537 1210/576/539 -f 4/1664/683 1207/1665/1083 1209/1663/1082 -f 1207/1665/1083 1206/572/535 1208/574/537 -f 3/1666/678 1205/1667/1084 1207/1665/1083 -f 1205/1667/1084 1204/570/533 1206/572/535 -f 2/1668/672 1201/1669/1085 1205/1667/1084 -f 1201/1669/1085 1200/568/531 1204/570/533 -f 1/1649/664 1202/1648/1075 1201/1669/1085 -f 1202/1648/1075 1203/566/529 1200/568/531 -f 1295/1670/1086 1394/1741/1156 1395/1671/1087 -f 2771/1673/1089 2770/1841/1252 1302/1674/1090 -f 2800/1676/1092 1277/3469/2292 1278/1677/1093 -f 1314/1679/1095 1315/1767/1182 1310/1680/1096 -f 1319/1682/1098 1323/1789/1204 1322/1683/1099 -f 2829/1685/1101 2821/3447/2271 1271/1686/1102 -f 1356/1688/1104 2734/3458/2282 2725/1689/1105 -f 1365/1691/1107 2784/1763/1178 1281/1692/1108 -f 2785/1694/1110 2792/1815/1228 1279/1695/1111 -f 1377/1697/1113 2728/1828/1241 2729/1698/1114 -f 1026/253/229 1345/1814/1227 1292/1700/1116 -f 1390/1701/1117 1391/1747/1162 1354/1702/1118 -f 1027/202/178 1029/328/304 1360/1704/1120 -f 1312/1706/1122 1305/1839/1248 2747/1707/1123 -f 2849/1709/1125 2845/3460/2284 2752/1710/1126 -f 1369/1712/1128 1373/1699/1115 2729/1698/1114 -f 1032/309/285 1341/1782/1197 1308/1714/1130 -f 2849/1709/1125 2742/1711/1127 2869/1715/1131 -f 1034/225/201 1033/299/275 1372/1717/1133 -f 2833/1719/1135 2829/1685/1101 1269/1687/1103 -f 1296/1721/1137 1289/1842/1253 2751/1722/1138 -f 2816/1724/1140 2773/3538/1155 1283/1725/1141 -f 1297/1727/1143 1393/1831/1244 2724/1728/1144 -f 1361/1730/1146 2732/3498/2321 2733/1731/1147 -f 1013/211/187 1014/206/182 1396/1733/1149 -f 2808/1735/1151 1275/3531/2352 1276/1736/1152 -f 2780/1738/1154 1282/3437/2261 1283/1739/1141 -f 1394/1741/1156 1298/1798/1212 1299/1742/1157 -f 1336/1743/1158 2739/3450/2274 2736/1744/1159 -f 1390/1701/1117 1386/1749/1164 1387/1746/1161 -f 1382/1748/1163 1383/1751/1166 1387/1746/1161 -f 1382/1748/1163 1378/1752/1167 1379/1750/1165 -f 1378/1752/1167 1374/1755/1170 1375/1753/1168 -f 1370/1754/1169 1371/1757/1172 1375/1753/1168 -f 1370/1754/1169 1338/1804/1218 1339/1756/1171 -f 1306/1758/1173 1307/1836/1219 1342/1759/1174 -f 1021/305/281 1316/1809/1222 1317/1761/1176 -f 2837/1762/1177 1267/3461/2285 1281/1692/1108 -f 1366/1764/1179 1362/1768/1183 1363/1765/1180 -f 1319/1682/1098 1318/1684/1100 1315/1767/1182 -f 1362/1768/1183 1358/1771/1186 1359/1769/1184 -f 1350/1770/1185 1351/1810/1223 1359/1769/1184 -f 1027/202/178 1352/1705/1121 1353/1772/1187 -f 1320/1773/1188 2744/1797/1211 2743/1774/1189 -f 1290/1776/1191 1291/1813/1226 1346/1777/1192 -f 2761/1779/1194 1286/3484/2307 2872/1780/1195 -f 1032/309/285 1034/225/201 1340/1718/1134 -f 1335/1783/1198 1347/1778/1193 1346/1777/1192 -f 1331/1785/1200 1335/1783/1198 1334/1784/1199 -f 1331/1785/1200 1330/1786/1201 1326/1787/1202 -f 1327/1788/1203 1326/1787/1202 1322/1683/1099 -f 1018/232/208 1019/231/207 1308/1790/1130 -f 1366/1764/1179 1367/1766/1181 2782/1792/1206 -f 1013/211/187 1300/1734/1150 1301/1794/1208 -f 1015/205/181 1016/269/245 1292/1700/1116 -f 1313/1796/1210 2745/3430/2254 2744/1797/1211 -f 1015/205/181 1293/1795/1209 1396/1733/1149 -f 1303/1675/1091 1302/1674/1090 1299/1742/1157 -f 1039/209/185 1028/208/184 1353/1772/1187 -f 1038/274/250 1039/209/185 1392/1799/1213 -f 1038/274/250 1388/1800/1214 1384/1801/1215 -f 1036/288/264 1037/281/257 1384/1801/1215 -f 1035/292/268 1036/288/264 1380/1802/1216 -f 1033/299/275 1035/292/268 1376/1803/1217 -f 1338/1804/1218 1343/1760/1175 1342/1759/1174 -f 1306/1805/1173 1311/1681/1097 1310/1680/1096 -f 2713/316/292 2781/3541/2361 1368/1807/1220 -f 1031/317/293 1368/1807/1220 1364/1808/1221 -f 1018/232/208 1309/1791/1205 1316/1809/1222 -f 1029/328/304 1030/321/297 1364/1808/1221 -f 1350/1770/1185 1355/1703/1119 1354/1702/1118 -f 2816/1724/1140 1273/1726/1142 1274/1811/1224 -f 1290/1776/1191 1295/1670/1086 1294/1672/1088 -f 1025/250/226 1333/1817/1230 1345/1814/1227 -f 2792/1815/1228 2796/1678/1094 1278/1677/1093 -f 1025/250/226 1024/245/221 1329/1816/1229 -f 1023/242/218 1325/1818/1231 1329/1816/1229 -f 1022/238/214 1321/1819/1232 1325/1818/1231 -f 1022/238/214 1020/237/213 1317/1761/1176 -f 1344/1820/1233 1337/1834/1247 2738/1821/1234 -f 2828/1823/1236 2861/3525/2346 2871/1824/1237 -f 2712/220/196 1017/212/188 1301/1794/1208 -f 1377/1697/1113 1381/1833/1246 2727/1827/1240 -f 1357/1732/1148 2733/1731/1147 2735/1829/1242 -f 1393/1831/1244 1394/1741/1156 1295/1670/1086 -f 1293/1795/1209 1294/1672/1088 1395/1671/1087 -f 1297/1727/1143 1298/1798/1212 1394/1741/1156 -f 1396/1733/1149 1395/1671/1087 1299/1742/1157 -f 1389/1690/1106 1390/1701/1117 1355/1703/1119 -f 1353/1772/1187 1354/1702/1118 1391/1747/1162 -f 1389/1690/1106 1385/1832/1245 1386/1749/1164 -f 1392/1799/1213 1391/1747/1162 1387/1746/1161 -f 1385/1832/1245 1381/1833/1246 1382/1748/1163 -f 1384/1801/1215 1388/1800/1214 1387/1746/1161 -f 1381/1833/1246 1377/1697/1113 1378/1752/1167 -f 1380/1802/1216 1384/1801/1215 1383/1751/1166 -f 1373/1699/1115 1374/1755/1170 1378/1752/1167 -f 1380/1802/1216 1379/1750/1165 1375/1753/1168 -f 1373/1699/1115 1369/1712/1128 1370/1754/1169 -f 1372/1717/1133 1376/1803/1217 1375/1753/1168 -f 1337/1834/1247 1338/1804/1218 1370/1754/1169 -f 1340/1718/1134 1372/1717/1133 1371/1757/1172 -f 1305/1835/1248 1306/1758/1173 1343/1760/1175 -f 1341/1782/1197 1342/1759/1174 1307/1836/1219 -f 2784/1763/1178 1365/1691/1107 1366/1764/1179 -f 1368/1807/1220 2781/3541/2361 2782/1792/1206 -f 1361/1730/1146 1362/1768/1183 1366/1764/1179 -f 1368/1807/1220 1367/1766/1181 1363/1765/1180 -f 1313/1796/1210 1314/1679/1095 1311/1681/1097 -f 1309/1791/1205 1310/1680/1096 1315/1767/1182 -f 1361/1730/1146 1357/1732/1148 1358/1771/1186 -f 1360/1704/1120 1364/1808/1221 1363/1765/1180 -f 1349/1830/1243 1350/1770/1185 1358/1771/1186 -f 1360/1704/1120 1359/1769/1184 1351/1810/1223 -f 1349/1830/1243 1356/1688/1104 1355/1703/1119 -f 1352/1705/1121 1351/1810/1223 1354/1702/1118 -f 1348/1745/1160 1289/1842/1253 1290/1776/1191 -f 1345/1814/1227 1346/1777/1192 1291/1813/1226 -f 1336/1743/1158 1348/1745/1160 1347/1778/1193 -f 1333/1817/1230 1334/1784/1199 1346/1777/1192 -f 1337/1834/1247 1344/1820/1233 1343/1760/1175 -f 1341/1782/1197 1340/1718/1134 1339/1756/1171 -f 1336/1743/1158 1335/1783/1198 1331/1785/1200 -f 1333/1817/1230 1329/1816/1229 1330/1786/1201 -f 1332/1837/1249 1331/1785/1200 1327/1788/1203 -f 1325/1818/1231 1326/1787/1202 1330/1786/1201 -f 1324/1775/1190 1328/1838/1250 1327/1788/1203 -f 1321/1819/1232 1322/1683/1099 1326/1787/1202 -f 1324/1775/1190 1323/1789/1204 1319/1682/1098 -f 1321/1819/1232 1317/1761/1176 1318/1684/1100 -f 1320/1773/1188 1319/1682/1098 1314/1679/1095 -f 1316/1809/1222 1315/1767/1182 1318/1684/1100 -f 1305/1839/1248 1312/1706/1122 1311/1681/1097 -f 1309/1791/1205 1308/1790/1130 1307/1806/1219 -f 1304/1840/1251 2772/3453/2277 2771/1673/1089 -f 2769/1826/1239 1301/1794/1208 1302/1674/1090 -f 1304/1840/1251 1303/1675/1091 1298/1798/1212 -f 1300/1734/1150 1299/1742/1157 1302/1674/1090 -f 1296/1721/1137 1295/1670/1086 1290/1776/1191 -f 1293/1795/1209 1292/1700/1116 1291/1813/1226 -f 2233/1843/1254 1813/2450/1809 1889/1844/1255 -f 2359/1846/1257 2357/2688/1951 1824/1847/1258 -f 2032/1849/1260 2031/2509/1848 1405/1850/1261 -f 1728/1852/1263 1453/2490/1830 1454/1853/1264 -f 1411/1855/1266 1413/1858/1267 1870/1856/32 -f 1413/1858/1267 1415/1860/1268 1871/1859/31 -f 1415/1860/1268 1417/1862/1269 1872/1861/30 -f 1417/1862/1269 1419/1864/1271 1873/1863/1270 -f 1419/1864/1271 2662/4074/34 2697/1865/15 -f 1805/1866/1272 1804/2498/1837 1894/1867/1273 -f 1422/1869/1274 1424/1872/1275 1875/1870/1275 -f 1424/1872/1275 1426/1874/1277 1876/1873/1277 -f 1426/1874/1277 1428/1876/1278 1877/1875/1278 -f 1428/1876/1278 1430/1878/18 1878/1877/18 -f 1430/1878/18 1432/1880/16 1879/1879/16 -f 1432/1880/16 1434/1882/13 1880/1881/13 -f 1434/1882/13 1411/1855/1266 1869/1857/15 -f 1430/1883/18 1444/1902/1289 1445/1884/1279 -f 2662/44/34 1419/1903/1271 1439/1886/1280 -f 1426/1888/1277 1442/1904/1290 1443/1889/1282 -f 1417/1891/1269 1415/1906/1268 1437/1892/1283 -f 1422/1894/1274 1440/2365/1733 1441/1895/1285 -f 1432/1885/16 1445/1884/1279 1446/1897/1286 -f 1413/1899/1267 1411/1905/1266 1435/1900/1287 -f 1428/1890/1278 1443/1889/1282 1444/1902/1289 -f 1419/1903/1271 1417/1891/1269 1438/1893/1284 -f 1424/1896/1275 1441/1895/1285 1442/1904/1290 -f 1411/1905/1266 1434/1898/13 1446/1897/1286 -f 1415/1906/1268 1413/1899/1267 1436/1901/1288 -f 1895/1907/15 1807/2237/1613 1808/1908/1291 -f 1918/1910/1292 1856/2491/1831 1817/1911/1293 -f 1445/1884/1279 1747/2320/1691 1751/1913/1295 -f 1446/1897/1286 1751/1913/1295 1755/1914/1296 -f 1435/1900/1287 1755/1914/1296 1759/1915/1297 -f 1772/1916/1298 1452/2303/1674 2664/76/55 -f 1437/1892/1283 1763/2319/1690 1767/1917/1299 -f 1818/1918/1300 1816/2448/1807 1911/1919/1301 -f 1770/1921/1303 1773/2301/1672 2685/84/15 -f 1638/1922/1304 1641/1925/1307 1612/1923/1305 -f 1641/1925/1307 1644/1927/1309 1613/1926/1308 -f 1644/1927/1309 2679/493/417 2676/91/69 -f 1463/1928/1310 1462/2176/1553 1684/1929/1311 -f 1614/1931/1313 1647/2181/1558 1683/1932/1314 -f 1652/1934/1316 1460/2252/1626 1471/1935/1317 -f 2684/102/80 2681/104/82 1690/1937/1319 -f 1475/1939/1321 1476/2228/1605 1660/1940/1322 -f 1893/1942/15 1839/2165/1324 1838/1943/1324 -f 1659/1945/1325 1663/1951/1331 1622/1946/1326 -f 1705/1948/1328 1702/1954/1334 1698/1949/1329 -f 1663/1951/1331 1667/1955/1335 1624/1952/1332 -f 1709/1953/1333 1706/1958/1338 1702/1954/1334 -f 1667/1955/1335 1671/1959/1339 1626/1956/1336 -f 1713/1957/1337 1710/1962/1342 1706/1958/1338 -f 1671/1959/1339 1675/1963/1343 1628/1960/1340 -f 1717/1961/1341 1714/1966/1346 1710/1962/1342 -f 1675/1963/1343 1679/1967/1347 1630/1964/1344 -f 1721/1965/1345 1718/1970/1350 1714/1966/1346 -f 1679/1967/1347 1688/2268/1642 1610/1968/1348 -f 1725/1969/1349 1722/2253/1627 1718/1970/1350 -f 1655/1971/1351 1659/1945/1325 1620/1947/1327 -f 1634/1973/1353 1638/1922/1304 1611/1924/1306 -f 1632/1933/1315 1683/1932/1314 1696/1975/1355 -f 1616/1977/1357 1651/2185/1562 1724/1978/1358 -f 1494/1980/1360 1495/1986/1366 2305/1981/1361 -f 2308/1983/1363 1485/1997/1377 1484/1984/1364 -f 1495/1986/1366 1496/1990/1370 2309/1987/1367 -f 2307/1985/1365 1484/1984/1364 1483/1988/1368 -f 1496/1990/1370 1497/1994/1374 2311/1991/1371 -f 2310/1989/1369 1483/1988/1368 1482/1992/1372 -f 1497/1994/1374 1498/1998/1378 2313/1995/1375 -f 2314/1996/1376 1486/1999/1379 1485/1997/1377 -f 1498/1998/1378 2667/2084/1464 2700/164/140 -f 2701/166/142 2666/167/143 1486/1999/1379 -f 2330/2000/1380 2223/2116/1496 1500/2001/1381 -f 2331/2003/1383 2265/2120/1500 1499/2004/1384 -f 1500/2001/1381 1501/2010/1390 2318/2006/1386 -f 2319/2007/1387 1488/2013/1393 1487/2008/1388 -f 1501/2010/1390 1502/2014/1394 2320/2011/1391 -f 2321/2012/1392 1489/2017/1397 1488/2013/1393 -f 1502/2014/1394 1503/2018/1398 2322/2015/1395 -f 2323/2016/1396 1490/2021/1401 1489/2017/1397 -f 1503/2018/1398 1504/2022/1402 2324/2019/1399 -f 2325/2020/1400 1491/2025/1405 1490/2021/1401 -f 1504/2022/1402 1505/2026/1406 2326/2023/1403 -f 2327/2024/1404 1492/2029/1409 1491/2025/1405 -f 1505/2026/1406 1506/2030/1410 2328/2027/1407 -f 2329/2028/1408 1493/2031/1411 1492/2029/1409 -f 1506/2030/1410 1494/1980/1360 2306/1982/1362 -f 2312/1993/1373 1482/1992/1372 1493/2031/1411 -f 2423/2032/1412 2425/2136/1516 1527/2033/1413 -f 1519/2035/1415 2410/3463/2287 2411/2036/1416 -f 1603/2038/1418 2435/3509/2331 2424/2039/1419 -f 1546/2041/1421 2413/3507/2329 2409/2042/1422 -f 1530/2044/1424 1538/2046/1426 1482/1992/1372 -f 1534/2045/1425 1542/2154/1532 1498/1998/1378 -f 1538/2046/1426 1607/2091/1471 1493/2031/1411 -f 1548/2047/1427 1545/4075/2708 1521/2048/1428 -f 2712/220/196 2413/3507/2329 1546/2041/1421 -f 2672/222/198 1545/4075/2708 1548/2047/1427 -f 2430/2050/1430 2429/3457/2281 1563/2051/1431 -f 2266/2053/1433 2269/2149/1529 1553/2054/1434 -f 2268/2056/1436 2414/3505/2328 2415/2057/1437 -f 1568/2059/1439 1565/2147/1527 1557/2060/1440 -f 1574/2062/1442 2418/2068/1448 2416/2063/1443 -f 1573/2065/1445 1565/2147/1527 1568/2059/1439 -f 1582/2067/1447 2419/3528/2349 2418/2068/1448 -f 1581/2069/1449 1573/2065/1445 1576/2066/1446 -f 2420/2071/1451 2419/3528/2349 1582/2067/1447 -f 1589/2073/1453 1581/2069/1449 1584/2070/1450 -f 1598/2075/1455 2421/3524/2345 2420/2071/1451 -f 1600/2076/1456 1597/2143/1523 1589/2073/1453 -f 2422/2077/1457 2421/3524/2345 1598/2075/1455 -f 1605/2079/1459 1597/2143/1523 1600/2076/1456 -f 1604/2081/1461 1513/4076/2709 1516/2082/1462 -f 1498/1998/1378 1542/2154/1532 2669/260/236 -f 1495/1986/1366 1510/2156/1534 1526/2085/1465 -f 1500/2001/1381 1550/2117/1497 1562/2086/1466 -f 1537/2087/1467 1540/2133/1513 1605/2079/1459 -f 1539/2088/1468 2412/3442/2266 2422/2077/1457 -f 1518/2089/1469 1530/2044/1424 1483/1988/1368 -f 1602/2090/1470 1515/2140/1520 1494/1980/1360 -f 1607/2091/1471 1599/2142/1522 1492/2029/1409 -f 1596/2092/1472 1604/2081/1461 1601/2083/1463 -f 2434/2094/1474 2435/3509/2331 1603/2038/1418 -f 1505/2026/1406 1594/2101/1481 1602/2090/1470 -f 1492/2029/1409 1599/2142/1522 1591/2096/1476 -f 1588/2097/1477 1596/2092/1472 1593/2093/1473 -f 2433/2099/1479 2434/2094/1474 1595/2095/1475 -f 1504/2022/1402 1586/2144/1524 1594/2101/1481 -f 1491/2025/1405 1591/2096/1476 1583/2102/1482 -f 1577/2103/1483 1580/2145/1525 1588/2097/1477 -f 1579/2104/1484 2432/3512/2334 2433/2099/1479 -f 1578/2105/1485 1586/2144/1524 1504/2022/1402 -f 1583/2102/1482 1575/2146/1526 1489/2017/1397 -f 1572/2106/1486 1580/2145/1525 1577/2103/1483 -f 2431/2108/1488 2432/3512/2334 1579/2104/1484 -f 1502/2014/1394 1570/2112/1492 1578/2105/1485 -f 1489/2017/1397 1575/2146/1526 1567/2110/1490 -f 1561/2111/1491 1564/2123/1503 1572/2106/1486 -f 1563/2051/1431 2429/3457/2281 2431/2108/1488 -f 1501/2010/1390 1562/2086/1466 1570/2112/1492 -f 1567/2110/1490 1559/3089/2164 1487/2008/1388 -f 2224/2113/1493 2227/2152/1531 1552/2114/1494 -f 2223/2116/1496 2225/2150/1530 1550/2117/1497 -f 1566/2064/1444 2416/2063/1443 2417/2118/1498 -f 2265/2120/1500 2267/2148/1528 1555/2121/1501 -f 2226/2122/1502 2428/3452/2276 2430/2050/1430 -f 1549/2115/1495 1552/2114/1494 1564/2123/1503 -f 2666/167/143 2674/311/287 1547/2124/1504 -f 1544/2125/1505 2671/313/289 2668/344/320 -f 1543/2127/1507 2427/2131/1511 2713/316/292 -f 1526/2085/1465 1534/2045/1425 1497/1994/1374 -f 1486/1999/1379 1547/2124/1504 1523/2128/1508 -f 1533/2129/1509 1536/2155/1533 1544/2125/1505 -f 1535/2130/1510 2426/3518/2339 2427/2131/1511 -f 1529/2132/1512 1532/2141/1521 1540/2133/1513 -f 2411/2036/1416 2412/3442/2266 1539/2088/1468 -f 1528/2134/1514 1536/2155/1533 1533/2129/1509 -f 2425/2136/1516 2426/3518/2339 1535/2130/1510 -f 1521/2048/1428 1520/4077/2710 1517/2137/1517 -f 1523/2128/1508 1518/2089/1469 1484/1984/1364 -f 1516/2082/1462 1513/4076/2709 1512/2138/1518 -f 1515/2140/1520 1510/2156/1534 1495/1986/1366 -f 2409/2042/1422 2410/3463/2287 1519/2035/1415 -f 1517/2137/1517 1520/4077/2710 1532/2141/1521 -f 2424/2039/1419 2423/2032/1412 1511/2034/1414 -f 1512/2138/1518 1528/2134/1514 1525/2135/1515 -f 1608/2080/1460 1607/2091/1471 1538/2046/1426 -f 1606/2078/1458 1605/2079/1459 1540/2133/1513 -f 1515/2140/1520 1602/2090/1470 1601/2083/1463 -f 1514/2040/1420 1513/4076/2709 1604/2081/1461 -f 1599/2142/1522 1607/2091/1471 1608/2080/1460 -f 1597/2143/1523 1605/2079/1459 1606/2078/1458 -f 1601/2083/1463 1602/2090/1470 1594/2101/1481 -f 1603/2038/1418 1604/2081/1461 1596/2092/1472 -f 1591/2096/1476 1599/2142/1522 1600/2076/1456 -f 1590/2072/1452 1589/2073/1453 1597/2143/1523 -f 1594/2101/1481 1586/2144/1524 1585/2098/1478 -f 1596/2092/1472 1588/2097/1477 1587/2100/1480 -f 1583/2102/1482 1591/2096/1476 1592/2074/1454 -f 1581/2069/1449 1589/2073/1453 1590/2072/1452 -f 1586/2144/1524 1578/2105/1485 1577/2103/1483 -f 1587/2100/1480 1588/2097/1477 1580/2145/1525 -f 1575/2146/1526 1583/2102/1482 1584/2070/1450 -f 1573/2065/1445 1581/2069/1449 1582/2067/1447 -f 1577/2103/1483 1578/2105/1485 1570/2112/1492 -f 1580/2145/1525 1572/2106/1486 1571/2109/1489 -f 1568/2059/1439 1567/2110/1490 1575/2146/1526 -f 1566/2064/1444 1565/2147/1527 1573/2065/1445 -f 1570/2112/1492 1562/2086/1466 1561/2111/1491 -f 1572/2106/1486 1564/2123/1503 1563/2051/1431 -f 1560/2061/1441 1559/3089/2164 1567/2110/1490 -f 1558/2119/1499 1557/2060/1440 1565/2147/1527 -f 1562/2086/1466 1550/2117/1497 1549/2115/1495 -f 1563/2051/1431 1564/2123/1503 1552/2114/1494 -f 2267/2148/1528 1559/3089/2164 1560/2061/1441 -f 2269/2149/1529 1557/2060/1440 1558/2119/1499 -f 2225/2150/1530 1555/3071/1501 1556/2151/1435 -f 2227/2152/1531 1553/3073/1434 1554/2153/1438 -f 1547/2124/1504 2674/311/287 2675/223/199 -f 1546/2041/1421 1545/4075/2708 2672/222/198 -f 2669/260/236 1542/2154/1532 1541/2126/1506 -f 2671/313/289 1544/2125/1505 1543/2127/1507 -f 1523/2128/1508 1547/2124/1504 1548/2047/1427 -f 1521/2048/1428 1545/4075/2708 1546/2041/1421 -f 1542/2154/1532 1534/2045/1425 1533/2129/1509 -f 1543/2127/1507 1544/2125/1505 1536/2155/1533 -f 1537/2087/1467 1538/2046/1426 1530/2044/1424 -f 1539/2088/1468 1540/2133/1513 1532/2141/1521 -f 1534/2045/1425 1526/2085/1465 1525/2135/1515 -f 1536/2155/1533 1528/2134/1514 1527/2033/1413 -f 1529/2132/1512 1530/2044/1424 1518/2089/1469 -f 1532/2141/1521 1520/4077/2710 1519/2035/1415 -f 1525/2135/1515 1526/2085/1465 1510/2156/1534 -f 1527/2033/1413 1528/2134/1514 1512/2138/1518 -f 1517/2137/1517 1518/2089/1469 1523/2128/1508 -f 1519/2035/1415 1520/4077/2710 1521/2048/1428 -f 1509/2139/1519 1510/2156/1534 1515/2140/1520 -f 1512/2138/1518 1513/4076/2709 1514/2040/1420 -f 1853/2157/1535 1630/1964/1344 1610/1968/1348 -f 1852/2159/1537 1628/1960/1340 1630/1964/1344 -f 1851/2160/1538 1626/1956/1336 1628/1960/1340 -f 1850/2161/1539 1624/1952/1332 1626/1956/1336 -f 1849/2162/1540 1622/1946/1326 1624/1952/1332 -f 1848/2163/1541 1620/1947/1327 1622/1946/1326 -f 1847/2164/1542 1618/1972/1352 1620/1947/1327 -f 1892/1909/15 1808/1908/1291 1839/2165/1324 -f 1820/2166/1543 1819/2364/1732 1915/2167/1544 -f 1846/2169/1546 1613/1926/1308 2676/91/69 -f 1845/2170/1547 1612/1923/1305 1613/1926/1308 -f 1844/2171/1548 1611/1924/1306 1612/1923/1305 -f 1843/2172/1549 1609/1974/1354 1611/1924/1306 -f 1842/2158/1536 1610/1968/1348 1609/1974/1354 -f 1682/2173/1550 1685/2257/1631 1694/2174/1551 -f 1462/2176/1553 1461/3095/2166 1695/2177/1554 -f 1693/1938/1320 1690/1937/1319 1649/2178/1555 -f 1615/2180/1557 1692/2251/1625 1647/2181/1558 -f 2665/372/347 1464/2256/1630 1691/2182/1559 -f 1697/2175/1552 1694/2174/1551 1653/2183/1560 -f 1617/1976/1356 1696/1975/1355 1651/2185/1562 -f 1681/2186/1563 1686/2266/1640 1689/2187/1564 -f 1481/2189/1566 1472/2269/1643 1687/2190/1567 -f 1631/1979/1359 1724/1978/1358 1720/2192/1569 -f 1677/2194/1571 1681/2186/1563 1678/2188/1565 -f 1480/2196/1573 1481/2189/1566 1680/2191/1568 -f 1723/1936/1318 1471/1935/1317 1470/2198/1575 -f 1629/2193/1570 1720/2192/1569 1716/2200/1577 -f 1673/2202/1579 1677/2194/1571 1674/2195/1572 -f 1479/2204/1581 1480/2196/1573 1676/2197/1574 -f 1719/2199/1576 1470/2198/1575 1469/2206/1583 -f 1627/2201/1578 1716/2200/1577 1712/2208/1585 -f 1669/2210/1587 1673/2202/1579 1670/2203/1580 -f 1478/2212/1589 1479/2204/1581 1672/2205/1582 -f 1715/2207/1584 1469/2206/1583 1468/2214/1591 -f 1625/2209/1586 1712/2208/1585 1708/2216/1593 -f 1665/2218/1595 1669/2210/1587 1666/2211/1588 -f 1477/2220/1597 1478/2212/1589 1668/2213/1590 -f 1711/2215/1592 1468/2214/1591 1467/2222/1599 -f 1623/2217/1594 1708/2216/1593 1704/2224/1601 -f 1661/2226/1603 1665/2218/1595 1662/2219/1596 -f 1476/2228/1605 1477/2220/1597 1664/2221/1598 -f 1707/2223/1600 1467/2222/1599 1466/2229/1606 -f 1621/2225/1602 1704/2224/1601 1700/2231/1608 -f 2221/2233/1610 1783/3082/2162 1899/2234/1611 -f 1919/2236/15 1887/4078/1796 1807/2237/1613 -f 1703/2230/1607 1466/2229/1606 1465/2238/1614 -f 1812/2240/1616 1821/2461/1818 1907/2241/1617 -f 1833/2243/1619 1832/2293/1665 1901/2244/1273 -f 1657/2246/1620 1661/2226/1603 1658/2227/1604 -f 1897/2248/1622 1823/2445/1804 1822/2249/1623 -f 2677/442/414 2683/443/80 1692/2251/1625 -f 1695/2177/1554 1461/3095/2166 1460/2252/1626 -f 1650/2184/1561 1653/2183/1560 1722/2253/1627 -f 1645/2254/1628 2680/495/462 2678/446/417 -f 1464/2256/1630 1463/1928/1310 1648/1930/1312 -f 1646/2179/1556 1649/2178/1555 1685/2257/1631 -f 1642/2258/1632 1645/2254/1628 1643/2255/1629 -f 2393/2260/1634 2380/3228/2194 2388/2261/1635 -f 1639/2263/1637 1642/2258/1632 1640/2259/1633 -f 2392/2265/1639 2385/3103/2170 2707/459/430 -f 1686/2266/1640 1636/2271/1645 1633/2267/1641 -f 1688/2268/1642 1634/1973/1353 1609/1974/1354 -f 1472/2269/1643 1473/3099/2168 1635/2270/1644 -f 1636/2271/1645 1639/2263/1637 1637/2264/1638 -f 1697/2175/1552 1696/1975/1355 1683/1932/1314 -f 1694/2174/1551 1685/2257/1631 2333/2272/1646 -f 1682/2173/1550 1683/1932/1314 1647/2181/1558 -f 1685/2257/1631 1649/2178/1555 2334/2274/1648 -f 1725/1969/1349 1724/1978/1358 1651/2185/1562 -f 2335/2275/1649 1722/2253/1627 1653/2183/1560 -f 1688/2268/1642 1679/1967/1347 1678/2188/1565 -f 1686/2266/1640 1681/2186/1563 2338/2277/1651 -f 1721/1965/1345 1720/2192/1569 1724/1978/1358 -f 2339/2279/1653 1718/1970/1350 1722/2253/1627 -f 1679/1967/1347 1675/1963/1343 1674/2195/1572 -f 1681/2186/1563 1677/2194/1571 2340/2280/1654 -f 1717/1961/1341 1716/2200/1577 1720/2192/1569 -f 2341/2281/1655 1714/1966/1346 1718/1970/1350 -f 1675/1963/1343 1671/1959/1339 1670/2203/1580 -f 1677/2194/1571 1673/2202/1579 2342/2282/1656 -f 1713/1957/1337 1712/2208/1585 1716/2200/1577 -f 2343/2283/1657 1710/1962/1342 1714/1966/1346 -f 1671/1959/1339 1667/1955/1335 1666/2211/1588 -f 1673/2202/1579 1669/2210/1587 2344/2284/1658 -f 1709/1953/1333 1708/2216/1593 1712/2208/1585 -f 2345/2285/1659 1706/1958/1338 1710/1962/1342 -f 1667/1955/1335 1663/1951/1331 1662/2219/1596 -f 1669/2210/1587 1665/2218/1595 2346/2286/1660 -f 1705/1948/1328 1704/2224/1601 1708/2216/1593 -f 2347/2287/1661 1702/1954/1334 1706/1958/1338 -f 1663/1951/1331 1659/1945/1325 1658/2227/1604 -f 1665/2218/1595 1661/2226/1603 2348/2288/1662 -f 1701/1950/1330 1700/2231/1608 1704/2224/1601 -f 2349/2289/1663 1698/1949/1329 1702/1954/1334 -f 1659/1945/1325 1655/1971/1351 1654/2247/1621 -f 1661/2226/1603 1657/2246/1620 2350/2290/1664 -f 1830/2291/1665 1805/1866/1272 1898/1868/1273 -f 1832/2293/1665 1831/2349/1665 1905/2294/1273 -f 1693/1938/1320 1692/2251/1625 2683/443/80 -f 1690/1937/1319 2681/104/82 2702/490/458 -f 1650/2184/1561 1651/2185/1562 1696/1975/1355 -f 1653/2183/1560 1694/2174/1551 2332/2273/1647 -f 2679/493/417 1644/1927/1309 1643/2255/1629 -f 2680/495/462 1645/2254/1628 2352/2296/1667 -f 1646/2179/1556 1647/2181/1558 1692/2251/1625 -f 1649/2178/1555 1690/1937/1319 2351/2295/1666 -f 1644/1927/1309 1641/1925/1307 1640/2259/1633 -f 1645/2254/1628 1642/2258/1632 2353/2297/1668 -f 1641/1925/1307 1638/1922/1304 1637/2264/1638 -f 2353/2297/1668 1642/2258/1632 1639/2263/1637 -f 1638/1922/1304 1634/1973/1353 1633/2267/1641 -f 2354/2298/1669 1639/2263/1637 1636/2271/1645 -f 1634/1973/1353 1688/2268/1642 1689/2187/1564 -f 2355/2299/1670 1636/2271/1645 1686/2266/1640 -f 1439/1886/1280 1771/2304/1675 2687/500/467 -f 1766/2300/1671 1769/2306/1677 1773/2301/1672 -f 1768/2302/1673 1451/2308/1679 1452/2303/1674 -f 1438/1893/1284 1767/1917/1299 1771/2304/1675 -f 1762/2305/1676 1765/2312/1683 1769/2306/1677 -f 1764/2307/1678 1450/2314/1685 1451/2308/1679 -f 1902/1848/1259 1824/1847/1258 1814/2309/1680 -f 1758/2311/1682 1761/2316/1687 1765/2312/1683 -f 1760/2313/1684 1449/2318/1689 1450/2314/1685 -f 1754/2315/1686 1757/2322/1693 1761/2316/1687 -f 1756/2317/1688 1448/2324/1695 1449/2318/1689 -f 1436/1901/1288 1759/1915/1297 1763/2319/1690 -f 1444/1902/1289 1743/2337/1708 1747/2320/1691 -f 1750/2321/1692 1753/2326/1697 1757/2322/1693 -f 1752/2323/1694 1459/2328/1699 1448/2324/1695 -f 1746/2325/1696 1749/2330/1701 1753/2326/1697 -f 1748/2327/1698 1458/2332/1703 1459/2328/1699 -f 1742/2329/1700 1745/2334/1705 1749/2330/1701 -f 1744/2331/1702 1457/2336/1707 1458/2332/1703 -f 1738/2333/1704 1741/2339/1710 1745/2334/1705 -f 1740/2335/1706 1456/2341/1712 1457/2336/1707 -f 1443/1889/1282 1739/2342/1713 1743/2337/1708 -f 1734/2338/1709 1737/2344/1715 1741/2339/1710 -f 1736/2340/1711 1455/2345/1716 1456/2341/1712 -f 1442/1904/1290 1735/2346/1717 1739/2342/1713 -f 1730/2343/1714 1733/2353/1723 1737/2344/1715 -f 1732/1854/1265 1454/1853/1264 1455/2345/1716 -f 1441/1895/1285 1731/2359/1727 1735/2346/1717 -f 1809/2347/1718 1833/2243/1619 1904/2245/1273 -f 1831/2349/1665 1830/2291/1665 1906/2292/1273 -f 2356/2350/1720 1820/2166/1543 1908/2168/1545 -f 1726/2352/1722 1729/2361/1729 1733/2353/1723 -f 2688/554/467 2687/500/467 1771/2304/1675 -f 2686/555/15 2685/84/15 1773/2301/1672 -f 1770/1921/1303 1771/2304/1675 1767/1917/1299 -f 1772/1916/1298 1773/2301/1672 1769/2306/1677 -f 1766/2300/1671 1767/1917/1299 1763/2319/1690 -f 1768/2302/1673 1769/2306/1677 1765/2312/1683 -f 1909/2354/15 1840/2483/1825 1811/2355/1724 -f 1855/2357/1725 1809/2347/1718 1912/2348/1719 -f 1762/2305/1676 1763/2319/1690 1759/1915/1297 -f 1764/2307/1678 1765/2312/1683 1761/2316/1687 -f 1758/2311/1682 1759/1915/1297 1755/1914/1296 -f 1760/2313/1684 1761/2316/1687 1757/2322/1693 -f 1754/2315/1686 1755/1914/1296 1751/1913/1295 -f 1756/2317/1688 1757/2322/1693 1753/2326/1697 -f 1750/2321/1692 1751/1913/1295 1747/2320/1691 -f 1752/2323/1694 1753/2326/1697 1749/2330/1701 -f 1746/2325/1696 1747/2320/1691 1743/2337/1708 -f 1748/2327/1698 1749/2330/1701 1745/2334/1705 -f 1742/2329/1700 1743/2337/1708 1739/2342/1713 -f 1744/2331/1702 1745/2334/1705 1741/2339/1710 -f 1738/2333/1704 1739/2342/1713 1735/2346/1717 -f 1740/2335/1706 1741/2339/1710 1737/2344/1715 -f 1734/2338/1709 1735/2346/1717 1731/2359/1727 -f 1736/2340/1711 1737/2344/1715 1733/2353/1723 -f 1730/2343/1714 1731/2359/1727 1727/2360/1728 -f 1732/1854/1265 1733/2353/1723 1729/2361/1729 -f 1913/2250/1624 1822/2249/1623 1825/2362/1730 -f 1819/2364/1732 1818/1918/1300 1916/1920/1302 -f 1440/2365/1733 1727/2360/1728 1731/2359/1727 -f 1779/2366/1734 1778/4079/1919 2599/2367/1735 -f 1780/2369/1737 1779/2366/1734 2596/2368/1736 -f 1781/2371/1739 1780/2369/1737 2600/2370/1738 -f 1782/2373/1741 1781/2371/1739 2602/2372/1740 -f 2689/2375/538 1782/2373/1741 2604/2374/1742 -f 2263/2377/1744 1783/4080/2162 2611/2378/1745 -f 2612/2380/1747 1785/2384/1751 1784/2381/1748 -f 2614/2383/1750 1786/2386/1753 1785/2384/1751 -f 2616/2385/1752 1787/2388/1755 1786/2386/1753 -f 2618/2387/1754 1788/2390/1757 1787/2388/1755 -f 2620/2389/1756 1789/2392/1759 1788/2390/1757 -f 2622/2391/1758 1790/2393/1760 1789/2392/1759 -f 2599/2367/1735 1778/4079/1919 1790/2393/1760 -f 2624/2394/1761 1791/4081/559 1792/2395/1762 -f 2627/2396/1763 1792/2395/1762 1793/2397/1764 -f 2629/2398/1765 1793/2397/1764 1794/2399/1766 -f 2631/2400/1767 1794/2399/1766 1795/2401/1768 -f 2633/2402/1769 1795/2401/1768 2691/2403/567 -f 2221/2405/1610 1796/2408/1773 2637/2406/1771 -f 1796/2408/1773 1797/2410/1775 2639/2409/1774 -f 1797/2410/1775 1798/2412/1777 2641/2411/1776 -f 1798/2412/1777 1799/2414/1779 2643/2413/1778 -f 1799/2414/1779 1800/2416/1781 2645/2415/1780 -f 1800/2416/1781 1801/2418/1783 2647/2417/1782 -f 1801/2418/1783 1802/2420/1785 2649/2419/1784 -f 1802/2420/1785 1791/4081/559 2624/2394/1761 -f 2635/2404/1770 2691/2403/567 2690/2421/584 -f 2692/2423/585 2689/2375/538 2606/2376/1743 -f 2693/2425/587 2692/2423/585 2652/2424/1787 -f 2656/2427/1789 2694/4082/590 2693/2425/587 -f 2651/2422/1786 2690/2421/584 2694/2428/590 -f 1886/2430/1790 1804/3088/1837 2271/2431/1791 -f 2272/2433/1793 1806/2466/1822 1803/2434/1794 -f 2230/2435/1795 1807/3069/1613 1887/2436/1796 -f 1803/2434/1794 1806/2466/1822 2231/2438/1798 -f 2277/2439/1799 2273/2489/1829 1810/2440/1800 -f 2278/2442/1802 1836/2480/1803 1835/2443/1803 -f 1823/2445/1804 1985/2458/1816 1984/2446/1805 -f 1978/2447/1806 1989/2671/1934 1855/2357/1725 -f 2244/2449/1808 1976/2726/1978 1813/2450/1809 -f 1822/2249/1623 1984/2446/1805 1987/2451/1810 -f 2360/2452/1811 1982/2459/1817 1820/2166/1543 -f 2274/2453/1812 2286/2721/1975 1975/2454/1813 -f 1981/2456/1814 1980/2457/1815 1818/1918/1300 -f 1980/2457/1815 1978/2447/1806 1816/2448/1807 -f 1817/1911/1293 1979/2676/1939 1985/2458/1816 -f 1982/2459/1817 1981/2456/1814 1819/2364/1732 -f 1975/2460/1813 1983/2680/1943 1821/2461/1818 -f 2287/2462/1819 1988/2687/1950 1854/2463/1820 -f 2276/2465/1802 1834/2479/1803 1806/2466/1822 -f 2237/2467/1823 1841/3066/1324 1838/2468/1324 -f 2235/2470/1823 1839/3067/1324 1808/2471/1291 -f 2232/2472/1824 1811/2487/1724 1840/2473/1825 -f 2275/2444/1802 2276/2465/1802 1830/2475/1665 -f 2277/2439/1799 2278/2442/1802 1832/2477/1665 -f 2234/2469/1823 2235/2470/1823 1834/2479/1803 -f 2236/2474/1826 2237/2467/1823 1836/2480/1803 -f 1890/1912/1294 1817/1911/1293 1823/2445/1804 -f 1891/1944/15 1838/1943/1324 1841/2481/1324 -f 1888/2482/15 1841/2481/1324 1840/2483/1825 -f 2282/2484/1827 2274/2453/1812 1812/2455/1616 -f 2238/2486/1828 1856/4083/1831 1811/2487/1724 -f 2279/2488/1821 1854/4084/1820 1810/2440/1800 -f 1816/2448/1807 1855/2357/1725 1917/2358/1726 -f 1448/2324/1695 1842/2158/1536 1843/2172/1549 -f 1449/2318/1689 1843/2172/1549 1844/2171/1548 -f 1450/2314/1685 1844/2171/1548 1845/2170/1547 -f 1451/2308/1679 1845/2170/1547 1846/2169/1546 -f 1452/2303/1674 1846/2169/1546 2695/689/631 -f 1453/2490/1830 1847/2164/1542 1848/2163/1541 -f 1454/1853/1264 1848/2163/1541 1849/2162/1540 -f 1455/2345/1716 1849/2162/1540 1850/2161/1539 -f 1456/2341/1712 1850/2161/1539 1851/2160/1538 -f 1457/2336/1707 1851/2160/1538 1852/2159/1537 -f 1458/2332/1703 1852/2159/1537 1853/2157/1535 -f 1459/2328/1699 1853/2157/1535 1842/2158/1536 -f 1910/2356/632 1811/2355/1724 1856/2491/1831 -f 2239/2437/1797 1887/2436/1796 1968/2492/1832 -f 1967/2494/1834 1886/2430/1790 2280/2432/1792 -f 1968/2496/1832 1887/4078/1796 1919/2236/15 -f 1804/2498/1837 1886/4085/1790 1920/2499/1838 -f 2011/2500/1839 2014/4086/1986 1447/2501/1840 -f 2047/2503/1842 2046/2792/2023 1932/2504/1843 -f 2018/2506/1845 2019/4087/1994 1427/2507/1846 -f 2031/2509/1848 2030/2512/1851 1406/2510/1849 -f 1431/2511/1850 2017/2518/1857 2018/2506/1845 -f 2030/2512/1851 2029/2519/1858 1407/2513/1852 -f 2009/2514/1853 2010/4088/1884 1776/2515/1854 -f 1433/2517/1856 2015/4089/2711 2017/2518/1857 -f 2029/2519/1858 2028/2523/1862 1408/2520/1859 -f 2016/2521/1860 2015/4089/2711 1433/2517/1856 -f 2028/2523/1862 2007/2542/1869 1397/2524/1863 -f 1412/2525/1864 2027/4090/2003 2016/2521/1860 -f 1880/1881/13 1869/1857/15 1971/2526/15 -f 1879/1879/16 1880/1881/13 1954/2527/13 -f 1878/1877/18 1879/1879/16 1953/2528/16 -f 1877/1875/1278 1878/1877/18 1952/2529/18 -f 1876/1873/1277 1877/1875/1278 1951/2530/1278 -f 1875/1870/1275 1876/1873/1277 1950/2531/1277 -f 1874/1871/1276 1875/1870/1275 1949/2532/1275 -f 1873/1863/1270 2697/1865/15 2699/2534/15 -f 1872/1861/30 1873/1863/1270 1947/2535/1270 -f 1871/1859/31 1872/1861/30 1946/2536/30 -f 1870/1856/32 1871/1859/31 1945/2537/31 -f 1869/1857/15 1870/1856/32 1944/2538/32 -f 2035/2539/1866 2013/2544/1871 1409/2540/1867 -f 2007/2542/1869 2008/2548/1875 1398/2543/1870 -f 2013/2544/1871 2012/2550/1877 1774/2545/1872 -f 2026/2546/1873 2027/4090/2003 1412/2525/1864 -f 2008/2548/1875 2037/2552/1879 1399/2549/1876 -f 2012/2550/1877 2009/2514/1853 1775/2516/1855 -f 1416/2551/1878 2025/4091/2000 2026/2546/1873 -f 2037/2552/1879 2036/2556/1883 1400/2553/1880 -f 2024/2554/1881 2025/4091/2000 1416/2551/1878 -f 2036/2556/1883 2035/2539/1866 1401/2541/1868 -f 2010/2557/1884 2011/2500/1839 1777/2502/1841 -f 1447/2501/1840 2014/4086/1986 2024/2554/1881 -f 2242/2559/1885 2023/3083/2163 1420/2560/1886 -f 1931/2562/715 1969/2586/695 1857/2563/694 -f 1930/2565/713 1931/2562/715 1868/2564/714 -f 1930/2565/713 1867/2566/712 1866/2567/1888 -f 1929/2568/711 1866/2567/1888 1865/2569/1889 -f 1928/2570/1890 1865/2569/1889 1864/2571/1891 -f 1927/2572/1892 1864/2571/1891 1863/2573/1893 -f 1926/2574/1894 1863/2573/1893 1862/2575/1895 -f 2698/2577/695 2696/4092/1011 1861/2578/1897 -f 1924/2579/1898 1861/2578/1897 1860/2580/698 -f 1923/2581/699 1860/2580/698 1859/2582/696 -f 1922/2583/697 1859/2582/696 1858/2584/1016 -f 1921/2585/693 1858/2584/1016 1857/2563/694 -f 2156/2587/1899 1973/2497/1836 1919/2236/15 -f 2148/2589/717 1910/2356/632 1918/1910/1292 -f 2300/2591/1901 2282/2484/1827 1896/2485/1618 -f 2140/2593/15 1888/2482/15 1909/2354/15 -f 2143/2595/15 1891/1944/15 1888/2482/15 -f 2142/2596/1903 1890/1912/1294 1897/2248/1622 -f 1915/2167/1544 1916/1920/1302 2150/2598/1302 -f 2138/2600/1624 1913/2250/1624 1914/2363/1731 -f 2136/2594/15 1909/2354/15 1910/2356/632 -f 2358/2351/1721 1908/2168/1545 2147/2602/1905 -f 2134/2604/1907 1902/1848/1259 1903/2310/1681 -f 2285/2606/1835 1966/3061/2156 1900/2607/1909 -f 2258/2609/727 2240/2626/1918 1973/2610/1836 -f 2133/2597/1622 1897/2248/1622 1913/2250/1624 -f 1896/2242/1618 1907/2241/1617 2135/2612/1911 -f 2152/2588/1900 1919/2236/15 1895/1907/15 -f 2283/2615/1913 1925/4093/1896 2209/2616/732 -f 1908/2168/1545 1915/2167/1544 2139/2599/1544 -f 2131/2618/15 1892/1909/15 1893/1942/15 -f 2144/2619/15 1893/1942/15 1891/1944/15 -f 1916/1920/1302 1911/1919/1301 2137/2620/1914 -f 2151/2590/1292 1918/1910/1292 1890/1912/1294 -f 1895/1907/15 1892/1909/15 2131/2618/15 -f 2365/2621/1915 2359/1846/1257 1902/1848/1259 -f 2241/1845/1256 1889/1844/1255 2141/2622/1916 -f 1920/2499/1838 1974/2668/1931 2155/2624/732 -f 2240/2626/1918 2243/4094/1833 1968/2627/1832 -f 1779/2628/1734 1921/2585/693 1969/2586/695 -f 1780/2630/1737 1922/2583/697 1921/2585/693 -f 1781/2631/1739 1923/2581/699 1922/2583/697 -f 1782/2632/1741 1924/2579/1898 1923/2581/699 -f 2689/2633/538 2698/2577/695 1924/2579/1898 -f 1785/2634/1751 1926/2574/1894 1925/2576/1896 -f 1786/2636/1753 1927/2572/1892 1926/2574/1894 -f 1787/2637/1755 1928/2570/1890 1927/2572/1892 -f 1788/2638/1757 1929/2568/711 1928/2570/1890 -f 1789/2639/1759 1930/2565/713 1929/2568/711 -f 1789/2639/1759 1790/2640/1760 1931/2562/715 -f 1778/2629/1919 1969/2586/695 1931/2562/715 -f 1971/2526/15 1944/2538/32 1792/2641/1762 -f 1944/2538/32 1945/2537/31 1793/2643/1764 -f 1945/2537/31 1946/2536/30 1794/2644/1766 -f 1946/2536/30 1947/2535/1270 1795/2645/1768 -f 1795/2645/1768 1947/2535/1270 2699/2534/15 -f 1948/2533/1865 1949/2532/1275 1797/2647/1775 -f 1949/2532/1275 1950/2531/1277 1798/2649/1777 -f 1950/2531/1277 1951/2530/1278 1799/2650/1779 -f 1951/2530/1278 1952/2529/18 1800/2651/1781 -f 1952/2529/18 1953/2528/16 1801/2652/1783 -f 1953/2528/16 1954/2527/13 1802/2653/1785 -f 1954/2527/13 1971/2526/15 1791/2642/559 -f 1427/2507/1846 2019/4087/1994 2020/2654/1920 -f 2033/2656/1922 2032/1849/1260 1404/1851/1262 -f 2020/2654/1920 2022/4095/1996 1423/2658/1924 -f 2034/2659/1925 2033/2656/1922 1403/2657/1923 -f 1423/2658/1924 2022/4095/1996 2021/2661/1927 -f 2284/2663/1929 2034/2659/1925 1402/2660/1926 -f 1784/2635/1748 1925/2576/1896 2283/2665/1913 -f 1920/2499/1838 1886/4085/1790 1967/2667/1834 -f 1985/2458/1816 1997/2677/1940 1996/2669/1932 -f 1815/2670/1933 2005/4096/2161 1989/2671/1934 -f 1984/2446/1805 1996/2669/1932 1999/2672/1935 -f 2362/2673/1936 1994/2678/1941 1982/2459/1817 -f 1993/2674/1937 1992/2675/1938 1980/2457/1815 -f 1992/2675/1938 1815/2670/1933 1978/2447/1806 -f 1979/2676/1939 1991/2682/1945 1997/2677/1940 -f 1994/2678/1941 1993/2674/1937 1981/2456/1814 -f 1829/2679/1942 1995/3101/2160 1983/2680/1943 -f 1990/2681/1944 2006/4097/1958 1991/2682/1945 -f 1986/2683/1946 1998/2725/1966 1827/2684/1947 -f 2294/2686/1949 2004/3058/1956 1988/2687/1950 -f 2357/2688/1951 2361/2724/1977 1986/2683/1946 -f 2238/2689/1828 2245/2722/1976 1990/2690/1944 -f 1824/1847/1258 1986/2683/1946 1977/2685/1948 -f 1856/2491/1831 1990/2681/1944 1979/2676/1939 -f 2293/2692/1952 2002/2719/1973 2001/2693/1953 -f 2289/2695/1955 1826/2707/1964 2004/2696/1956 -f 2252/2698/1957 2247/2705/1962 1991/2699/1945 -f 2251/2701/1959 1999/4098/1935 1996/2702/1932 -f 2249/2704/1961 1997/3060/1940 1991/2699/1945 -f 2291/2706/1963 2000/4099/2712 1826/2707/1964 -f 2246/2708/1965 1827/4100/1947 1998/2709/1966 -f 2288/2711/1968 1828/3076/2159 2003/2712/1969 -f 2290/2694/1954 2291/2706/1963 1992/2714/1938 -f 2293/2692/1952 1994/4101/1941 2362/2716/1936 -f 2249/2704/1961 2000/4099/2712 2001/2693/1953 -f 2371/2718/1972 2251/2701/1959 2002/2719/1973 -f 2288/2711/1968 1829/4102/1942 1975/2454/1813 -f 2245/2722/1976 2252/4103/1957 2006/2723/1958 -f 2361/2724/1977 2363/3100/2155 1998/2725/1966 -f 2246/2708/1965 1828/3076/2159 1976/2726/1978 -f 2069/2727/1979 2008/4104/1875 2007/2728/1869 -f 2010/2730/1884 2009/2736/1853 2076/2731/1981 -f 2011/2733/1839 2010/4105/1884 2073/2734/1982 -f 2009/2736/1853 2012/2738/1877 2080/2737/1984 -f 2012/2738/1877 2013/2780/1871 2082/2739/1985 -f 2014/2740/1986 2011/2733/1839 2077/2735/1983 -f 2085/2742/1988 2015/4106/2711 2016/2743/1860 -f 2017/2745/1857 2015/4106/2711 2085/2742/1988 -f 2018/2747/1845 2017/2745/1857 2089/2746/1990 -f 2093/2749/1992 2019/2751/1994 2018/2747/1845 -f 2095/2750/1993 2020/4107/1920 2019/2751/1994 -f 2097/2752/1995 2021/4108/1927 2022/2753/1996 -f 2242/2755/1885 2021/4108/1927 2097/2752/1995 -f 2024/2757/1881 2014/2740/1986 2083/2741/1987 -f 2025/2759/2000 2024/2757/1881 2103/2758/1999 -f 2026/2761/1873 2025/2759/2000 2105/2760/2001 -f 2027/2763/2003 2026/2761/1873 2107/2762/2002 -f 2016/2743/1860 2027/2763/2003 2109/2764/2004 -f 2072/2729/1980 2007/2728/1869 2028/2765/1862 -f 2028/2765/1862 2029/4109/1858 2114/2767/2006 -f 2114/2767/2006 2029/4109/1858 2030/2768/1851 -f 2116/2769/2007 2030/2768/1851 2031/2770/1848 -f 2031/2770/1848 2032/2773/1260 2120/2772/2009 -f 2022/2753/1996 2020/4107/1920 2095/2750/1993 -f 2032/2773/1260 2033/2775/1922 2122/2774/2010 -f 2033/2775/1922 2034/4110/1925 2124/2776/2011 -f 2284/2777/1929 2023/4111/2163 2101/2778/2012 -f 2013/2780/1871 2035/4112/1866 2126/2781/2014 -f 2126/2781/2014 2035/4112/1866 2036/2782/1883 -f 2128/2783/2015 2036/2782/1883 2037/2784/1879 -f 2037/2784/1879 2008/4104/1875 2069/2727/1979 -f 2039/4113/2713 2038/4114/2048 2296/2788/2019 -f 2038/4114/2048 2059/4115/2070 2296/2788/2019 -f 2059/4115/2070 2060/4116/2073 2296/2788/2019 -f 2060/4116/2073 2061/4117/2020 2296/2788/2019 -f 2061/4117/2020 2062/4118/2025 2296/2788/2019 -f 2062/4118/2025 2063/4119/2029 2296/2788/2019 -f 2063/4119/2029 2064/4120/2036 2296/2788/2019 -f 2064/4120/2036 2065/4121/2040 2296/2788/2019 -f 2296/2788/2019 2054/4122/2158 2254/4123/2042 -f 2068/4124/2063 2039/4113/2713 2296/2788/2019 -f 2066/4125/2051 2067/4126/2059 2296/2788/2019 -f 2067/4126/2059 2068/4124/2063 2296/2788/2019 -f 2043/4127/2714 2044/4128/2069 2066/4125/2051 -f 2041/2787/2018 2040/4129/2056 2043/4127/2714 -f 2045/2786/2017 2042/4130/2072 2041/2787/2018 -f 2056/4131/2054 2055/4132/2715 2045/2786/2017 -f 2058/4133/2068 2057/4134/2065 2254/4123/2042 -f 2057/4134/2065 2056/4131/2054 2254/4123/2042 -f 2046/4135/2023 2047/4136/1842 2254/4123/2042 -f 2047/4136/1842 2058/4133/2068 2254/4123/2042 -f 2049/4137/2716 2048/4138/2027 2254/4123/2042 -f 2048/4138/2027 2046/4135/2023 2254/4123/2042 -f 2051/4139/2033 2050/4140/2031 2254/4123/2042 -f 2050/4140/2031 2049/4137/2716 2254/4123/2042 -f 2052/4141/2154 2053/4142/2038 2254/4123/2042 -f 2053/4142/2038 2051/4139/2033 2254/4123/2042 -f 2296/2788/2019 2254/4123/2042 2045/2786/2017 -f 2041/2787/2018 2043/4127/2714 2296/2788/2019 -f 2043/4127/2714 2066/4125/2051 2296/2788/2019 -f 2056/4131/2054 2045/2786/2017 2254/4123/2042 -f 2061/2789/2020 2060/2846/2073 1957/2790/2021 -f 2046/2792/2023 2048/2796/2027 1933/2793/2024 -f 2062/2794/2025 2061/2789/2020 1958/2791/2022 -f 2048/2796/2027 2049/4143/2716 1934/2797/2028 -f 2063/2798/2029 2062/2794/2025 1959/2795/2026 -f 1934/2797/2028 2049/4143/2716 2050/2800/2031 -f 2051/2802/2033 2053/2807/2038 1937/2803/2034 -f 2050/2800/2031 2051/2802/2033 1936/2804/2035 -f 2064/2805/2036 2063/2798/2029 1960/2799/2030 -f 2053/2807/2038 2052/3056/2154 1938/2808/2039 -f 2065/2809/2040 2064/2805/2036 1961/2806/2037 -f 2254/2811/2042 2054/3075/2158 1963/2812/2043 -f 2296/2814/2019 2065/2809/2040 1962/2810/2041 -f 2045/2816/2017 2055/4144/2715 1940/2817/2046 -f 2038/2819/2048 2039/4145/2713 1507/2820/2049 -f 2066/2822/2051 2044/2842/2069 1964/2823/2052 -f 1940/2817/2046 2055/4144/2715 2056/2825/2054 -f 2040/2827/2056 2041/4146/2018 1881/2828/2057 -f 2067/2830/2059 2066/2822/2051 1965/2824/2053 -f 2056/2825/2054 2057/2838/2065 1942/2832/2061 -f 2041/2833/2018 2042/2845/2072 1884/2834/2062 -f 2068/2836/2063 2067/2830/2059 1970/2831/2060 -f 2057/2838/2065 2058/2841/2068 1943/2839/2066 -f 1883/2840/2067 2043/4147/2714 2040/2827/2056 -f 1507/2820/2049 2039/4145/2713 2068/2836/2063 -f 2058/2841/2068 2047/2503/1842 1955/2505/1844 -f 2044/2842/2069 2043/4147/2714 1883/2840/2067 -f 2059/2843/2070 2038/2819/2048 1508/2821/2050 -f 2042/2845/2072 2045/2816/2017 1939/2818/2047 -f 2060/2846/2073 2059/2843/2070 1956/2844/2071 -f 2129/2847/2074 2070/2850/2075 1507/2848/2049 -f 2129/2847/2074 2130/2785/2016 2069/2727/1979 -f 2127/2851/2076 2129/2847/2074 1972/2849/2064 -f 2128/2783/2015 2130/2785/2016 2129/2847/2074 -f 1965/2853/2053 2125/2854/2077 2127/2851/2076 -f 2126/2781/2014 2128/2783/2015 2127/2851/2076 -f 2081/2855/2078 2125/2854/2077 1965/2853/2053 -f 2081/2855/2078 2082/2739/1985 2126/2781/2014 -f 2297/2857/2079 2102/2860/2080 1963/2858/2043 -f 2298/2779/2013 2101/2778/2012 2102/2860/2080 -f 2121/2861/2081 2123/2864/2082 1962/2862/2041 -f 2121/2861/2081 2122/2774/2010 2124/2776/2011 -f 2119/2865/2083 2121/2861/2081 1961/2863/2037 -f 2119/2865/2083 2120/2772/2009 2122/2774/2010 -f 2099/2867/2084 2096/2870/2085 1936/2868/2035 -f 2100/2754/1997 2095/2750/1993 2096/2870/2085 -f 1959/2871/2026 2117/2872/2086 2119/2865/2083 -f 2118/2771/2008 2120/2772/2009 2119/2865/2083 -f 2115/2873/2087 2117/2872/2086 1959/2871/2026 -f 2115/2873/2087 2116/2769/2007 2118/2771/2008 -f 1957/2875/2021 2113/2876/2088 2115/2873/2087 -f 2113/2876/2088 2114/2767/2006 2116/2769/2007 -f 2111/2877/2089 2113/2876/2088 1957/2875/2021 -f 2111/2877/2089 2112/2766/2005 2114/2767/2006 -f 2071/2879/2090 2111/2877/2089 1956/2878/2071 -f 2071/2879/2090 2072/2729/1980 2112/2766/2005 -f 2087/2881/2091 2110/2884/2092 1943/2882/2066 -f 2088/2744/1989 2109/2764/2004 2110/2884/2092 -f 2110/2884/2092 2108/2886/2093 1942/2885/2061 -f 2110/2884/2092 2109/2764/2004 2107/2762/2002 -f 2108/2886/2093 2106/2888/2094 1941/2887/2055 -f 2108/2886/2093 2107/2762/2002 2105/2760/2001 -f 2106/2888/2094 2104/2890/2095 1940/2889/2046 -f 2106/2888/2094 2105/2760/2001 2103/2758/1999 -f 2104/2890/2095 2084/2892/2096 1939/2891/2047 -f 2104/2890/2095 2103/2758/1999 2083/2741/1987 -f 2255/2893/2097 2098/2896/2098 1938/2894/2039 -f 2256/2756/1998 2097/2752/1995 2098/2896/2098 -f 1938/2894/2039 2098/2896/2098 2099/2867/2084 -f 2097/2752/1995 2100/2754/1997 2099/2867/2084 -f 2096/2870/2085 2094/2898/2099 1935/2897/2032 -f 2095/2750/1993 2093/2749/1992 2094/2898/2099 -f 2094/2898/2099 2092/2900/2100 1934/2899/2028 -f 2093/2749/1992 2091/2748/1991 2092/2900/2100 -f 2092/2900/2100 2090/2902/2101 1933/2901/2024 -f 2091/2748/1991 2089/2746/1990 2090/2902/2101 -f 2090/2902/2101 2086/2904/2102 1932/2903/1843 -f 2090/2902/2101 2089/2746/1990 2085/2742/1988 -f 1932/2903/1843 2086/2904/2102 2087/2881/2091 -f 2085/2742/1988 2088/2744/1989 2087/2881/2091 -f 1939/2891/2047 2084/2892/2096 2078/2905/2103 -f 2083/2741/1987 2077/2735/1983 2078/2905/2103 -f 2079/2907/2104 2081/2855/2078 1964/2856/2052 -f 2079/2907/2104 2080/2737/1984 2082/2739/1985 -f 1882/2909/2058 2075/2910/2105 2079/2907/2104 -f 2075/2910/2105 2076/2731/1981 2080/2737/1984 -f 1884/2906/2062 2078/2905/2103 2074/2911/2106 -f 2077/2735/1983 2073/2734/1982 2074/2911/2106 -f 1881/2913/2057 2074/2914/2106 2075/2910/2105 -f 2073/2732/1982 2076/2731/1981 2075/2910/2105 -f 1507/2848/2049 2070/2850/2075 2071/2879/2090 -f 2069/2727/1979 2072/2729/1980 2071/2879/2090 -f 2206/2915/740 2153/2625/740 2155/2624/732 -f 2257/2623/1917 2141/2622/1916 2184/2917/2107 -f 2370/2919/2109 2365/2621/1915 2134/2604/1907 -f 2145/2614/1912 2131/2618/15 2163/2921/15 -f 2204/2923/1292 2151/2590/1292 2142/2596/1903 -f 2150/2598/1302 2137/2620/1914 2175/2925/2112 -f 2144/2619/15 2143/2595/15 2188/2927/15 -f 2131/2618/15 2144/2619/15 2190/2928/15 -f 2147/2602/1905 2139/2599/1544 2179/2929/2113 -f 2299/2931/734 2155/3041/732 1974/2932/1931 -f 2159/2933/2115 2158/4148/2135 1874/2934/1276 -f 2132/2613/1902 2135/2612/1911 2171/2936/2116 -f 2167/2938/1622 2133/2597/1622 2138/2600/1624 -f 2260/2940/727 2258/2609/727 2156/2611/1899 -f 2169/2920/2110 2134/2604/1907 2146/2605/1908 -f 2366/2603/1906 2147/2602/1905 2196/2930/2114 -f 2173/2944/15 2136/2594/15 2148/2589/717 -f 2177/2939/2118 2138/2600/1624 2149/2601/1904 -f 2139/2599/1544 2150/2598/1302 2202/2926/1302 -f 2186/2924/1903 2142/2596/1903 2133/2597/1622 -f 2143/2595/15 2140/2593/15 2182/2947/15 -f 2140/2593/15 2136/2594/15 2173/2944/15 -f 2302/2948/2122 2300/2591/1901 2132/2592/1902 -f 2198/2945/717 2148/2589/717 2151/2590/1292 -f 2160/2950/2123 2161/2963/2129 2152/2951/1900 -f 2216/2953/2124 2161/4149/2129 2160/2954/2123 -f 2162/2956/2126 2161/4149/2129 2216/2953/2124 -f 2192/2958/2111 2214/2975/2125 2160/2959/2123 -f 1874/2934/1276 2158/4148/2135 2157/2961/2128 -f 2161/2963/2129 2162/4150/2126 2156/2964/1899 -f 2220/2965/2130 2217/2971/2132 2159/2966/2115 -f 2156/2968/1899 2162/4151/2126 2218/2969/2127 -f 2212/2970/2131 2218/2969/2127 2217/2971/2132 -f 2157/2972/2128 2213/4152/2136 2191/2973/2133 -f 2191/2973/2133 2213/4152/2136 2214/2975/2125 -f 2159/2976/2115 2217/2979/2132 2215/2977/2134 -f 2218/2957/2127 2216/2953/2124 2215/2977/2134 -f 2158/2978/2135 2215/2977/2134 2213/2980/2136 -f 2215/2977/2134 2216/2953/2124 2214/2955/2125 -f 1453/2982/1830 2197/2985/717 2203/2983/1292 -f 2197/2985/717 2198/2945/717 2204/2923/1292 -f 2301/2986/2137 2166/2989/2139 1465/2987/1614 -f 2301/2986/2137 2302/2948/2122 2165/2949/2117 -f 2181/2990/15 2174/2993/15 1728/2991/1263 -f 2182/2947/15 2173/2944/15 2174/2993/15 -f 2187/2994/15 2181/2990/15 1729/2992/1729 -f 2188/2927/15 2182/2947/15 2181/2990/15 -f 1618/2996/1352 2185/2999/1903 2168/2997/2140 -f 2185/2999/1903 2186/2924/1903 2167/2938/1622 -f 2180/3000/2113 2201/3003/2141 1700/3001/1608 -f 2179/2929/2113 2202/2926/1302 2201/3003/2141 -f 1654/3004/1621 2178/3007/2118 2199/3005/2142 -f 2178/3007/2118 2177/2939/2118 2200/2946/2121 -f 2174/2993/15 2197/2985/717 1453/2982/1830 -f 2173/2944/15 2198/2945/717 2197/2985/717 -f 2367/3008/2143 2195/3011/2144 1698/3009/1329 -f 2368/2943/2120 2196/2930/2114 2195/3011/2144 -f 1656/3012/1323 2170/3015/2146 2193/3013/2145 -f 2170/3015/2146 2169/2920/2110 2194/2942/2119 -f 2228/3016/1612 2259/3019/727 2211/3017/966 -f 2259/3019/727 2260/2940/727 2219/2941/966 -f 1655/2998/1351 2168/2997/2140 2178/3007/2118 -f 2168/2997/2140 2167/2938/1622 2177/2939/2118 -f 2166/3020/2139 2172/3023/2147 1699/3021/1615 -f 2165/2937/2117 2171/2936/2116 2172/3023/2147 -f 2195/3011/2144 2180/3000/2113 1701/3002/1330 -f 2196/2930/2114 2179/2929/2113 2180/3000/2113 -f 2164/3024/15 2189/3027/15 1727/3025/1728 -f 2163/2921/15 2190/2928/15 2189/3027/15 -f 2189/3027/15 2187/2994/15 1726/2995/1722 -f 2190/2928/15 2188/2927/15 2187/2994/15 -f 2201/3003/2141 2176/3029/2148 1619/3028/1609 -f 2202/2926/1302 2175/2925/2112 2176/3029/2148 -f 1847/2984/1542 2203/2983/1292 2185/2999/1903 -f 2203/2983/1292 2204/2923/1292 2186/2924/1903 -f 2191/3030/2133 2164/3024/15 1440/3026/1733 -f 2192/2922/2111 2163/2921/15 2164/3024/15 -f 2350/3032/1664 2369/3033/2149 2170/3015/2146 -f 2369/3033/2149 2370/2919/2109 2169/2920/2110 -f 2261/3034/2150 2183/3037/2153 1474/3035/2151 -f 2262/2918/2108 2184/2917/2107 2183/3037/2153 -f 2205/3038/740 2209/3039/732 1925/2576/1896 -f 2205/3038/740 2206/2915/740 2210/2916/732 -f 2303/3040/734 2210/3042/732 2155/3041/732 -f 2304/2617/734 2209/2616/732 2210/3042/732 -f 2220/3043/2130 2211/3045/966 2219/3046/966 -f 2194/3049/2119 2262/2918/2108 2261/3034/2150 -f 1475/3051/1321 2193/3050/2145 2261/3034/2150 -f 2207/3052/977 2208/3054/977 2260/2940/727 -f 1899/3053/1611 2207/3052/977 2259/3019/727 -f 2208/3054/977 2154/3063/977 2258/2609/727 -f 2146/3055/1908 2257/2623/1917 2262/2918/2108 -f 2102/2860/2080 2101/2778/2012 2256/2756/1998 -f 1963/2858/2043 2102/2860/2080 2255/2893/2097 -f 2052/3056/2154 2254/2811/2042 2253/2813/2044 -f 2101/2778/2012 2023/4111/2163 2242/2755/1885 -f 1977/3057/1948 1827/4100/1947 2246/2708/1965 -f 2004/3058/1956 2252/4103/1957 2245/2722/1976 -f 2363/3059/2155 1999/4098/1935 2251/2701/1959 -f 1997/3060/1940 2249/2704/1961 2248/2703/1960 -f 2003/2712/1969 1828/3076/2159 2246/2708/1965 -f 1826/2707/1964 2000/4099/2712 2249/2704/1961 -f 2001/2693/1953 2002/2719/1973 2251/2701/1959 -f 2004/2696/1956 1826/2707/1964 2247/2705/1962 -f 1988/2687/1950 2245/2722/1976 2238/2689/1828 -f 1966/3061/2156 2243/4094/1833 2240/2626/1918 -f 1903/3062/1681 2241/1845/1256 2257/2623/1917 -f 2154/3063/977 1900/2607/1909 2240/2626/1918 -f 1421/2662/1928 2021/2661/1927 2242/2559/1885 -f 1885/3064/2157 2239/2437/1797 2243/2493/1833 -f 1810/2440/1800 1854/4084/1820 2238/2486/1828 -f 1841/3066/1324 2237/2467/1823 2236/2474/1826 -f 1839/3067/1324 2235/2470/1823 2234/2469/1823 -f 1810/2440/1800 2232/2472/1824 2236/2474/1826 -f 1806/2466/1822 1834/2479/1803 2235/2470/1823 -f 1836/2480/1803 2237/2467/1823 2234/2469/1823 -f 1977/3057/1948 2244/2449/1808 2233/1843/1254 -f 1807/3069/1613 2230/2435/1795 2231/2438/1798 -f 1803/2434/1794 2230/2435/1795 2239/2437/1797 -f 2611/2378/1745 1783/4080/2162 2221/2405/1610 -f 1796/2648/1773 2221/2233/1610 2228/2235/1612 -f 1551/2052/1432 1552/2114/1494 2227/2152/1531 -f 1549/2115/1495 1550/2117/1497 2225/2150/1530 -f 2415/3070/1437 2428/3452/2276 2226/2122/1502 -f 1555/3071/1501 2225/2150/1530 2223/2116/1496 -f 1553/3073/1434 2227/2152/1531 2224/2113/1493 -f 1499/3072/1384 2223/2116/1496 2330/2000/1380 -f 1814/3068/1680 2233/1843/1254 2241/1845/1256 -f 2207/3052/977 2304/2617/734 2303/3040/734 -f 2208/3054/977 2303/3040/734 2299/2931/734 -f 2183/3037/2153 2184/2917/2107 2302/2948/2122 -f 1474/3035/2151 2183/3037/2153 2301/2986/2137 -f 2184/2917/2107 2141/2622/1916 2300/2591/1901 -f 2154/3063/977 2299/2931/734 2281/2608/1910 -f 2123/2864/2082 2124/2776/2011 2298/2779/2013 -f 1962/2862/2041 2123/2864/2082 2297/2857/2079 -f 2054/3075/2158 2296/2814/2019 2295/2815/2045 -f 2124/2776/2011 2034/4110/1925 2284/2777/1929 -f 1828/3076/2159 2288/2711/1968 2286/2721/1975 -f 2002/2719/1973 2293/2692/1952 2372/2717/1971 -f 2001/2693/1953 2000/4099/2712 2291/2706/1963 -f 1995/3077/2160 1829/4102/1942 2288/2711/1968 -f 1815/3078/1933 1992/2714/1938 2291/2706/1963 -f 1815/3078/1933 2289/2695/1955 2294/2697/1949 -f 1993/2715/1937 1994/4101/1941 2293/2692/1952 -f 2005/3080/2161 2294/2686/1949 2287/2462/1819 -f 2263/2666/1744 2283/2665/1913 1899/2234/1611 -f 2023/3083/2163 2284/2663/1929 2270/2664/1930 -f 1899/3053/1611 2283/2615/1913 2304/2617/734 -f 1967/3084/1834 2285/2606/1835 2281/2608/1910 -f 2141/2622/1916 1889/1844/1255 2282/2484/1827 -f 2285/2495/1835 2280/2432/1792 1885/3064/2157 -f 1809/3085/1718 1855/4153/1725 2279/2488/1821 -f 1889/1844/1255 1813/2450/1809 2274/2453/1812 -f 1836/2480/1803 2278/2442/1802 2277/2439/1799 -f 1834/2479/1803 2276/2465/1802 2275/2444/1802 -f 1805/3086/1272 1830/2475/1665 2276/2465/1802 -f 1989/3081/1934 2287/2462/1819 2279/2464/1821 -f 1976/2726/1978 2286/2721/1975 2274/2453/1812 -f 1831/2476/1665 1832/2477/1665 2278/2442/1802 -f 1833/2478/1619 1809/3085/1718 2273/2489/1829 -f 1804/3088/1837 1805/3086/1272 2272/2433/1793 -f 2280/2432/1792 2271/2431/1791 1803/2434/1794 -f 2608/2382/1749 1784/2381/1748 2263/2377/1744 -f 1554/2058/1438 1553/2054/1434 2269/2149/1529 -f 1556/2055/1435 1555/2121/1501 2267/2148/1528 -f 1559/3089/2164 2267/2148/1528 2265/2120/1500 -f 2417/2118/1498 2414/3505/2328 2268/2056/1436 -f 1557/2060/1440 2269/2149/1529 2266/2053/1433 -f 1487/2008/1388 2265/2120/1500 2331/2003/1383 -f 2317/2009/1389 2331/2003/1383 2264/3090/2138 -f 2316/3074/1385 2330/2000/1380 2222/3091/2152 -f 1460/2252/1626 2312/1993/1373 2329/2028/1408 -f 2328/2027/1407 2306/1982/1362 1472/2269/1643 -f 1471/1935/1317 2329/2028/1408 2327/2024/1404 -f 2326/2023/1403 2328/2027/1407 1481/2189/1566 -f 1470/2198/1575 2327/2024/1404 2325/2020/1400 -f 2324/2019/1399 2326/2023/1403 1480/2196/1573 -f 1469/2206/1583 2325/2020/1400 2323/2016/1396 -f 2322/2015/1395 2324/2019/1399 1479/2204/1581 -f 1468/2214/1591 2323/2016/1396 2321/2012/1392 -f 2320/2011/1391 2322/2015/1395 1478/2212/1589 -f 1467/2222/1599 2321/2012/1392 2319/2007/1387 -f 2318/2006/1386 2320/2011/1391 1477/2220/1597 -f 1466/2229/1606 2319/2007/1387 2317/2009/1389 -f 2315/2002/1382 2318/2006/1386 1476/2228/1605 -f 2264/3090/2138 2331/2003/1383 2316/2005/1385 -f 2222/3091/2152 2330/2000/1380 2315/2002/1382 -f 2665/372/347 2701/166/142 2314/1996/1376 -f 2706/1320/995 2384/3231/2201 2390/3094/2165 -f 1464/2256/1630 2314/1996/1376 2308/1983/1363 -f 1461/3095/2166 2310/1989/1369 2312/1993/1373 -f 1462/2176/1553 2307/1985/1365 2310/1989/1369 -f 2389/3096/2167 2398/3227/2213 2311/3097/1371 -f 1463/1928/1310 2308/1983/1363 2307/1985/1365 -f 2306/1982/1362 2305/1981/1361 1473/3099/2168 -f 2364/2720/1974 2372/2717/1971 2292/2713/1970 -f 1998/2709/1966 2363/3059/2155 2371/2718/1972 -f 2199/3005/2142 2200/2946/2121 2370/2919/2109 -f 1657/3006/1620 2199/3005/2142 2369/3033/2149 -f 2171/2936/2116 2368/2943/2120 2367/3008/2143 -f 2172/3023/2147 2367/3008/2143 2349/3010/1663 -f 2135/2612/1911 2366/2603/1906 2368/2943/2120 -f 2200/2946/2121 2149/2601/1904 2365/2621/1915 -f 1987/2451/1810 1999/2672/1935 2363/3100/2155 -f 2250/2710/1967 2371/2718/1972 2364/2720/1974 -f 2372/2717/1971 2362/2716/1936 1995/3077/2160 -f 1825/2362/1730 1987/2451/1810 2361/2724/1977 -f 1995/3101/2160 2362/2673/1936 2360/2452/1811 -f 2149/2601/1904 1914/2363/1731 2359/1846/1257 -f 1907/2241/1617 2358/2351/1721 2366/2603/1906 -f 1983/2680/1943 2360/2452/1811 2356/2350/1720 -f 1821/2461/1818 2356/2350/1720 2358/2351/1721 -f 1635/2270/1644 2355/2299/1670 2337/2278/1652 -f 2334/2274/1648 2351/2295/1666 1691/2182/1559 -f 2396/3102/2169 2386/3233/2207 2385/3103/2170 -f 2336/2276/1650 2332/2273/1647 1695/2177/1554 -f 2351/2295/1666 2702/490/458 2682/373/348 -f 2348/2288/1662 2350/2290/1664 1656/1941/1323 -f 1699/2239/1615 2349/2289/1663 2347/2287/1661 -f 2346/2286/1660 2348/2288/1662 1660/1940/1322 -f 1703/2230/1607 2347/2287/1661 2345/2285/1659 -f 2344/2284/1658 2346/2286/1660 1664/2221/1598 -f 1707/2223/1600 2345/2285/1659 2343/2283/1657 -f 2342/2282/1656 2344/2284/1658 1668/2213/1590 -f 1711/2215/1592 2343/2283/1657 2341/2281/1655 -f 2340/2280/1654 2342/2282/1656 1672/2205/1582 -f 1715/2207/1584 2341/2281/1655 2339/2279/1653 -f 2338/2277/1651 2340/2280/1654 1676/2197/1574 -f 1719/2199/1576 2339/2279/1653 2335/2275/1649 -f 2337/2278/1652 2338/2277/1651 1680/2191/1568 -f 1723/1936/1318 2335/2275/1649 2336/2276/1650 -f 2333/2272/1646 2334/2274/1648 1648/1930/1312 -f 2332/2273/1647 2333/2272/1646 1684/1929/1311 -f 1914/2363/1731 1825/2362/1730 2357/2688/1951 -f 2395/3104/2171 2391/3232/2214 2352/3105/1667 -f 2487/3107/2172 2483/3126/2177 1614/3108/1313 -f 2589/3110/2173 2548/3137/2179 2176/3111/2148 -f 2153/3113/740 2570/3172/740 2571/3114/2174 -f 2488/3116/2175 2487/3107/2172 1632/3109/1315 -f 2579/3118/2176 2589/3110/2173 2175/3112/2112 -f 1901/3120/1273 2575/3143/1273 2563/3121/1273 -f 1858/3123/1016 2549/3236/740 2438/3124/740 -f 2483/3126/2177 2496/3141/1010 1615/3127/1557 -f 1898/3128/1273 2561/3179/1273 2565/3129/1273 -f 2550/3131/740 2549/3236/740 1858/3123/1016 -f 2551/3133/740 2550/3131/740 1859/3132/696 -f 2485/3135/2178 2488/3116/2175 1617/3117/1356 -f 2548/3137/2179 2495/3159/2181 1619/3138/1609 -f 2552/3139/740 2551/3133/740 1860/3134/698 -f 2496/3141/1010 2718/1544/1010 2677/1368/414 -f 1905/3142/1273 2574/3153/1273 2575/3143/1273 -f 2723/1372/740 2552/3139/740 1861/3140/1897 -f 1863/3144/1893 2554/3152/740 2553/3145/740 -f 2573/3147/2180 2579/3118/2176 2137/3119/1914 -f 1904/3122/1273 2563/3121/1273 2567/3149/1273 -f 1864/3151/1891 2555/3158/740 2554/3152/740 -f 1906/3130/1273 2565/3129/1273 2574/3153/1273 -f 2205/3154/740 2595/3161/740 2585/3155/740 -f 1865/3157/1889 2556/3163/740 2555/3158/740 -f 2495/3159/2181 2494/3166/2182 1621/3160/1602 -f 1862/3146/1895 2553/3145/740 2595/3161/740 -f 1866/3162/1888 2557/3165/740 2556/3163/740 -f 1867/3164/712 2558/3171/740 2557/3165/740 -f 2494/3166/2182 2493/3174/2184 1623/3167/1594 -f 1912/3150/1719 2567/3149/1273 2569/3168/2183 -f 1868/3170/714 2559/3173/740 2558/3171/740 -f 2206/3156/740 2585/3155/740 2570/3172/740 -f 1857/3125/694 2438/3124/740 2559/3173/740 -f 2493/3174/2184 2492/3176/2185 1625/3175/1586 -f 2492/3176/2185 2491/3180/2186 1627/3177/1578 -f 1894/3178/1273 2572/3187/1273 2561/3179/1273 -f 2491/3180/2186 2490/3183/2187 1629/3181/1570 -f 1917/3169/1726 2569/3168/2183 2573/3147/2180 -f 2490/3183/2187 2489/3185/2188 1631/3184/1359 -f 2489/3185/2188 2485/3135/2178 1616/3136/1357 -f 1920/3186/1838 2571/3114/2174 2572/3187/1273 -f 1635/3188/1644 2394/3234/2215 2406/3189/2189 -f 2403/3191/2190 2394/3234/2215 1635/3188/1644 -f 2407/3193/2191 2395/3104/2171 2353/3106/1668 -f 2399/3195/2192 2402/3235/2193 2305/3196/1361 -f 2402/3198/2193 2403/3191/2190 1473/3192/2168 -f 2406/3200/2189 2407/3193/2191 2354/3194/1669 -f 2380/3202/2194 2374/3213/2205 2373/3203/2195 -f 2377/3205/2197 2376/3207/2199 2704/1435/1031 -f 2378/3206/2198 2375/3208/2200 2376/3207/2199 -f 2379/3204/2196 2373/3203/2195 2375/3208/2200 -f 2384/3209/2201 2706/4071/995 2704/1435/1031 -f 2383/3210/2202 2384/3209/2201 2376/3207/2199 -f 2382/3211/2203 2383/3210/2202 2375/3208/2200 -f 2381/3212/2204 2382/3211/2203 2373/3203/2195 -f 2379/3204/2196 2387/3215/2206 2388/3214/1635 -f 2378/3206/2198 2386/3216/2207 2387/3215/2206 -f 2377/3205/2197 2385/3217/2170 2386/3216/2207 -f 2705/1448/1041 2707/1449/430 2385/3217/2170 -f 2405/3218/1636 2388/4154/1635 2387/3219/2206 -f 2381/3221/2204 2374/4155/2205 2404/3222/2209 -f 2383/3224/2202 2382/3229/2203 2400/3225/2211 -f 2398/3227/2213 2399/3195/2192 2309/3197/1367 -f 2404/3222/2209 2374/4155/2205 2380/3228/2194 -f 2382/3229/2203 2381/4156/2204 2401/3230/2210 -f 2384/3231/2201 2383/3224/2202 2397/3226/2212 -f 2391/3232/2214 2708/1472/1052 2703/1464/463 -f 2710/1466/1049 2389/3096/2167 2313/3098/1375 -f 2408/3220/2208 2387/3219/2206 2386/3233/2207 -f 2408/3220/2208 2407/3193/2191 2406/3200/2189 -f 2403/3191/2190 2402/3198/2193 2401/3223/2210 -f 2399/3195/2192 2398/3227/2213 2397/3226/2212 -f 2396/3102/2169 2395/3104/2171 2407/3193/2191 -f 2405/2262/1636 2406/3189/2189 2394/3234/2215 -f 2391/3232/2214 2395/3104/2171 2396/3102/2169 -f 2402/3235/2193 2399/3195/2192 2400/3225/2211 -f 2709/1471/1051 2708/1472/1052 2391/3232/2214 -f 2389/3096/2167 2710/1466/1049 2711/1321/996 -f 2398/3227/2213 2389/3096/2167 2390/3094/2165 -f 2393/2260/1634 2394/3234/2215 2403/3191/2190 -f 2549/3236/740 2436/3238/695 2437/3237/695 -f 2550/3131/740 2439/3239/695 2436/3238/695 -f 2551/3133/740 2440/3240/695 2439/3239/695 -f 2552/3139/740 2441/3241/695 2440/3240/695 -f 2723/1372/740 2714/1485/695 2441/3241/695 -f 2554/3152/740 2442/3243/695 2443/3242/695 -f 2555/3158/740 2444/3244/695 2442/3243/695 -f 2556/3163/740 2445/3245/695 2444/3244/695 -f 2557/3165/740 2446/3246/695 2445/3245/695 -f 2558/3171/740 2447/3247/695 2446/3246/695 -f 2559/3173/740 2448/3248/695 2447/3247/695 -f 2559/3173/740 2438/3124/740 2437/3237/695 -f 2459/3249/695 2458/3256/695 2446/3246/695 -f 2714/1485/695 2715/1487/695 2453/3250/695 -f 2457/3251/695 2456/3258/695 2444/3244/695 -f 2440/3240/695 2452/3257/695 2451/3252/695 -f 2454/3253/695 2455/3311/695 2443/3242/695 -f 2460/3254/695 2459/3249/695 2447/3247/695 -f 2436/3238/695 2449/3259/695 2450/3255/695 -f 2458/3256/695 2457/3251/695 2445/3245/695 -f 2441/3241/695 2453/3250/695 2452/3257/695 -f 2456/3258/695 2454/3253/695 2442/3243/695 -f 2450/3255/695 2460/3254/695 2448/3248/695 -f 2439/3239/695 2451/3252/695 2449/3259/695 -f 2468/3260/695 2466/3288/695 2505/3261/695 -f 2542/3263/695 2546/3307/695 2545/3264/695 -f 2538/3266/695 2542/3263/695 2541/3265/695 -f 2471/3268/695 2470/3293/695 2543/3269/695 -f 2534/3271/695 2538/3266/695 2537/3267/695 -f 2464/3273/695 2472/3325/695 2535/3274/695 -f 2530/3276/695 2534/3271/695 2533/3272/695 -f 2463/3278/695 2464/3273/695 2531/3275/695 -f 2526/3280/695 2530/3276/695 2529/3277/695 -f 2522/3282/695 2526/3280/695 2525/3281/695 -f 2518/3284/695 2522/3282/695 2521/3283/695 -f 2514/3286/695 2518/3284/695 2517/3285/695 -f 2466/3288/695 2467/3332/695 2510/3289/695 -f 2504/3290/695 2499/3331/695 2509/3291/695 -f 2470/3293/695 2469/3328/695 2547/3294/695 -f 2487/3107/2172 2488/3116/2175 2474/3295/695 -f 2483/3126/2177 2487/3107/2172 2486/3296/695 -f 2485/3135/2178 2489/3185/2188 2481/3298/695 -f 2489/3185/2188 2490/3183/2187 2480/3300/695 -f 2490/3183/2187 2491/3180/2186 2479/3301/695 -f 2491/3180/2186 2492/3176/2185 2478/3302/695 -f 2492/3176/2185 2493/3174/2184 2477/3303/695 -f 2493/3174/2184 2494/3166/2182 2476/3304/695 -f 2476/3304/695 2494/3166/2182 2495/3159/2181 -f 2718/1544/1010 2496/3141/1010 2473/3306/695 -f 2488/3116/2175 2485/3135/2178 2484/3299/695 -f 2496/3141/1010 2483/3126/2177 2482/3297/695 -f 2546/3307/695 2507/3329/695 2502/3308/695 -f 2544/3309/695 2503/3312/695 2456/3258/695 -f 2500/3310/695 2508/3330/695 2455/3311/695 -f 2503/3312/695 2500/3310/695 2454/3253/695 -f 2722/1552/695 2514/3286/695 2513/3287/695 -f 2716/1555/695 2465/3315/695 2515/3313/695 -f 2512/3314/695 2516/3317/695 2452/3257/695 -f 2465/3315/695 2461/3318/695 2519/3316/695 -f 2516/3317/695 2520/3320/695 2451/3252/695 -f 2461/3318/695 2462/3321/695 2523/3319/695 -f 2520/3320/695 2524/3322/695 2449/3259/695 -f 2462/3321/695 2463/3278/695 2527/3279/695 -f 2524/3322/695 2528/3323/695 2450/3255/695 -f 2720/1566/695 2512/3314/695 2453/3250/695 -f 2528/3323/695 2532/3324/695 2460/3254/695 -f 2532/3324/695 2536/3326/695 2459/3249/695 -f 2472/3325/695 2471/3268/695 2539/3270/695 -f 2536/3326/695 2540/3327/695 2458/3256/695 -f 2540/3327/695 2544/3309/695 2457/3251/695 -f 2469/3328/695 2468/3260/695 2506/3262/695 -f 2507/3329/695 2504/3290/695 2501/3292/695 -f 2500/3310/695 2503/3312/695 2502/3308/695 -f 2504/3290/695 2507/3329/695 2506/3262/695 -f 2508/3330/695 2500/3310/695 2501/3292/695 -f 2499/3331/695 2504/3290/695 2505/3261/695 -f 2512/3314/695 2720/1566/695 2719/1553/695 -f 2514/3286/695 2722/1552/695 2721/1556/695 -f 2516/3317/695 2512/3314/695 2513/3287/695 -f 2518/3284/695 2514/3286/695 2515/3313/695 -f 2520/3320/695 2516/3317/695 2517/3285/695 -f 2522/3282/695 2518/3284/695 2519/3316/695 -f 2524/3322/695 2520/3320/695 2521/3283/695 -f 2526/3280/695 2522/3282/695 2523/3319/695 -f 2528/3323/695 2524/3322/695 2525/3281/695 -f 2530/3276/695 2526/3280/695 2527/3279/695 -f 2532/3324/695 2528/3323/695 2529/3277/695 -f 2534/3271/695 2530/3276/695 2531/3275/695 -f 2536/3326/695 2532/3324/695 2533/3272/695 -f 2538/3266/695 2534/3271/695 2535/3274/695 -f 2540/3327/695 2536/3326/695 2537/3267/695 -f 2542/3263/695 2538/3266/695 2539/3270/695 -f 2544/3309/695 2540/3327/695 2541/3265/695 -f 2546/3307/695 2542/3263/695 2543/3269/695 -f 2503/3312/695 2544/3309/695 2545/3264/695 -f 2507/3329/695 2546/3307/695 2547/3294/695 -f 2473/3306/695 2482/3297/695 2461/3318/695 -f 2474/3295/695 2484/3299/695 2464/3273/695 -f 2717/1545/695 2473/3306/695 2465/3315/695 -f 2466/3288/695 2476/3304/695 2475/3305/695 -f 2477/3303/695 2476/3304/695 2466/3288/695 -f 2478/3302/695 2477/3303/695 2468/3260/695 -f 2479/3301/695 2478/3302/695 2469/3328/695 -f 2480/3300/695 2479/3301/695 2470/3293/695 -f 2481/3298/695 2480/3300/695 2471/3268/695 -f 2484/3299/695 2481/3298/695 2472/3325/695 -f 2482/3297/695 2486/3296/695 2462/3321/695 -f 2486/3296/695 2474/3295/695 2463/3278/695 -f 2572/3187/1273 2571/3114/2174 2570/3172/740 -f 2573/3147/2180 2569/3168/2183 2568/3334/695 -f 2569/3168/2183 2567/3149/1273 2566/3335/695 -f 2578/3336/695 2574/3153/1273 2565/3129/1273 -f 2567/3149/1273 2563/3121/1273 2562/3338/695 -f 2577/3339/695 2575/3143/1273 2574/3153/1273 -f 2564/3337/695 2565/3129/1273 2561/3179/1273 -f 2562/3338/695 2563/3121/1273 2575/3143/1273 -f 2561/3179/1273 2572/3187/1273 2576/3333/695 -f 2560/3340/695 2576/3333/695 2586/3341/695 -f 2581/3343/695 2562/3338/695 2577/3339/695 -f 2582/3345/695 2564/3337/695 2560/3340/695 -f 2587/3344/695 2577/3339/695 2578/3336/695 -f 2566/3335/695 2562/3338/695 2581/3343/695 -f 2588/3346/695 2578/3336/695 2564/3337/695 -f 2568/3334/695 2566/3335/695 2583/3347/695 -f 2579/3118/2176 2568/3334/695 2584/3348/695 -f 2576/3333/695 2570/3172/740 2585/3155/740 -f 2443/3242/695 2497/3349/695 2595/3161/740 -f 2497/3349/695 2586/3341/695 2585/3155/740 -f 2548/3137/2179 2594/3350/695 2475/3305/695 -f 2589/3110/2173 2584/3348/695 2594/3350/695 -f 2594/3350/695 2593/3351/695 2467/3332/695 -f 2584/3348/695 2583/3347/695 2593/3351/695 -f 2509/3291/695 2511/3353/695 2592/3352/695 -f 2511/3353/695 2588/3346/695 2582/3345/695 -f 2467/3332/695 2593/3351/695 2591/3354/695 -f 2593/3351/695 2583/3347/695 2581/3343/695 -f 2499/3331/695 2498/3355/695 2511/3353/695 -f 2498/3355/695 2587/3344/695 2588/3346/695 -f 2508/3330/695 2592/3352/695 2590/3356/695 -f 2592/3352/695 2582/3345/695 2580/3342/695 -f 2510/3289/695 2591/3354/695 2498/3355/695 -f 2591/3354/695 2581/3343/695 2587/3344/695 -f 2590/3356/695 2497/3349/695 2443/3242/695 -f 2580/3342/695 2586/3341/695 2497/3349/695 -f 1402/3357/1926 2609/3360/2217 2660/3358/2216 -f 2609/3360/2217 2608/2382/1749 2661/2379/1746 -f 1420/3361/1886 2610/3364/2219 2658/3362/2218 -f 2610/3364/2219 2611/2378/1745 2659/2407/1772 -f 1777/3365/1841 2650/3368/2221 2657/3366/2220 -f 2650/3368/2221 2651/2422/1786 2656/2429/1789 -f 1776/3369/1854 2657/3372/2220 2655/3370/2222 -f 2657/3372/2220 2656/2427/1789 2654/2426/1788 -f 2655/3370/2222 2653/3374/2223 1774/3373/1872 -f 2654/2426/1788 2652/2424/1787 2653/3374/2223 -f 2653/3374/2223 2607/3376/2224 1409/3375/1867 -f 2652/2424/1787 2606/2376/1743 2607/3376/2224 -f 1447/3377/1840 2634/3378/2225 2650/3368/2221 -f 2634/3378/2225 2635/2404/1770 2651/2422/1786 -f 1433/3379/1856 2648/3382/2227 2625/3380/2226 -f 2648/3382/2227 2649/2419/1784 2624/2394/1761 -f 1431/3383/1850 2646/3384/2228 2648/3382/2227 -f 2647/2417/1782 2649/2419/1784 2648/3382/2227 -f 2644/3385/2229 2646/3384/2228 1431/3383/1850 -f 2645/2415/1780 2647/2417/1782 2646/3384/2228 -f 2642/3387/2230 2644/3385/2229 1429/3386/1847 -f 2643/2413/1778 2645/2415/1780 2644/3385/2229 -f 2640/3389/2231 2642/3387/2230 1427/3388/1846 -f 2641/2411/1776 2643/2413/1778 2642/3387/2230 -f 2638/3391/2232 2640/3389/2231 1425/3390/1921 -f 2639/2409/1774 2641/2411/1776 2640/3389/2231 -f 2636/3393/2233 2638/3391/2232 1423/3392/1924 -f 2637/2406/1771 2639/2409/1774 2638/3391/2232 -f 2658/3362/2218 2636/3393/2233 1421/3394/1928 -f 2659/2407/1772 2637/2406/1771 2636/3393/2233 -f 1418/3395/1882 2632/3396/2234 2634/3378/2225 -f 2632/3396/2234 2633/2402/1769 2635/2404/1770 -f 1416/3397/1878 2630/3398/2235 2632/3396/2234 -f 2630/3398/2235 2631/2400/1767 2633/2402/1769 -f 1414/3399/1874 2628/3400/2236 2630/3398/2235 -f 2628/3400/2236 2629/2398/1765 2631/2400/1767 -f 1412/3401/1864 2626/3402/2237 2628/3400/2236 -f 2626/3402/2237 2627/2396/1763 2629/2398/1765 -f 1410/3381/1861 2625/3380/2226 2626/3402/2237 -f 2625/3380/2226 2624/2394/1761 2627/2396/1763 -f 2598/3403/2238 2623/3406/2239 1408/3404/1859 -f 2598/3403/2238 2599/2367/1735 2622/2391/1758 -f 1408/3404/1859 2623/3406/2239 2621/3407/2240 -f 2623/3406/2239 2622/2391/1758 2620/2389/1756 -f 1407/3408/1852 2621/3407/2240 2619/3409/2241 -f 2621/3407/2240 2620/2389/1756 2618/2387/1754 -f 1406/3410/1849 2619/3409/2241 2617/3411/2242 -f 2619/3409/2241 2618/2387/1754 2616/2385/1752 -f 1405/3412/1261 2617/3411/2242 2615/3413/2243 -f 2617/3411/2242 2616/2385/1752 2614/2383/1750 -f 1404/3414/1262 2615/3413/2243 2613/3415/2244 -f 2615/3413/2243 2614/2383/1750 2612/2380/1747 -f 1403/3416/1923 2613/3415/2244 2609/3360/2217 -f 2613/3415/2244 2612/2380/1747 2608/2382/1749 -f 2660/3358/2216 2610/3364/2219 1420/3361/1886 -f 2661/2379/1746 2611/2378/1745 2610/3364/2219 -f 2607/3376/2224 2605/3418/2245 1401/3417/1868 -f 2606/2376/1743 2604/2374/1742 2605/3418/2245 -f 2605/3418/2245 2603/3420/2246 1400/3419/1880 -f 2604/2374/1742 2602/2372/1740 2603/3420/2246 -f 2603/3420/2246 2601/3422/2247 1399/3421/1876 -f 2602/2372/1740 2600/2370/1738 2601/3422/2247 -f 2601/3422/2247 2597/3424/2248 1398/3423/1870 -f 2600/2370/1738 2596/2368/1736 2597/3424/2248 -f 2597/3424/2248 2598/3403/2238 1397/3405/1863 -f 2596/2368/1736 2599/2367/1735 2598/3403/2238 -f 2759/3425/2249 2758/3522/2343 2867/3426/2250 -f 2766/3428/2252 2770/1841/1252 2771/1673/1089 -f 1312/1706/1122 2746/1708/1124 2745/3430/2254 -f 2778/3431/2255 2787/3488/2311 2786/3432/2256 -f 2791/3434/2258 2790/3550/2370 2794/3435/2259 -f 2780/1738/1154 2785/1694/1110 1280/1696/1112 -f 1385/1832/1245 2726/3459/2283 2727/1827/1240 -f 2809/1812/1225 1274/1811/1224 1266/3438/2262 -f 1393/1831/1244 1296/1721/1137 2750/1723/1139 -f 1328/1838/1250 2741/3532/2353 2740/3440/2264 -f 2756/3441/2265 2817/3523/2344 2422/2077/1457 -f 2826/3443/2267 2863/3534/2355 2862/3444/2268 -f 2423/2032/1412 2824/3545/2365 2832/3446/2270 -f 2828/1823/1236 1270/1825/1238 1271/1686/1102 -f 2865/1781/1196 2872/1780/1195 1287/3448/2272 -f 1336/1743/1158 1332/1837/1249 2740/3440/2264 -f 2776/3451/2275 2813/3540/2360 2428/3452/2276 -f 2772/3453/2277 1284/3494/2317 1285/3454/2278 -f 2430/2050/1430 2812/3499/2322 2844/3456/2280 -f 1356/1688/1104 1349/1830/1243 2735/1829/1242 -f 1389/1690/1106 2725/1689/1105 2726/3459/2283 -f 2841/3439/2263 1266/3438/2262 2752/1710/1126 -f 2837/1762/1177 2833/1719/1135 1268/1720/1136 -f 1337/1834/1247 1369/1712/1128 2730/1713/1129 -f 2409/2042/1422 2764/3508/2330 2868/3462/2286 -f 2760/3449/2273 1287/3448/2272 1288/3464/2288 -f 1344/1820/1233 2737/1822/1235 2747/3466/1123 -f 2866/3427/2251 2867/3426/2250 2763/3467/2290 -f 2800/1676/1092 2804/1737/1153 1276/1736/1152 -f 2862/3444/2268 2863/3534/2355 2859/3470/2293 -f 2859/3470/2293 2855/3536/2357 2854/3472/2295 -f 2854/3472/2295 2855/3536/2357 2851/3473/2296 -f 2850/3474/2297 2851/3473/2296 2847/3475/2298 -f 2847/3475/2298 2843/3537/2358 2842/3477/2300 -f 2842/3477/2300 2843/3537/2358 2811/3478/2301 -f 2814/3480/2303 2775/3539/2359 2774/3481/2304 -f 2789/3483/2306 2788/3519/2340 2417/2118/1498 -f 2761/1779/1194 2768/3455/2279 1285/3454/2278 -f 2839/3485/2308 2835/3542/2362 2834/3486/2309 -f 2787/3488/2311 2790/3550/2370 2791/3434/2258 -f 2834/3486/2309 2835/3542/2362 2831/3489/2312 -f 2831/3489/2312 2823/3544/2364 2822/3491/2314 -f 2825/3492/2315 2824/3545/2365 2423/2032/1412 -f 2772/3453/2277 1304/1840/1251 2748/3493/2316 -f 2818/3495/2318 2755/3546/2366 2754/3496/2319 -f 1365/1691/1107 2731/1693/1109 2732/3498/2321 -f 2428/3452/2276 2813/3540/2360 2812/3499/2322 -f 2807/3500/2323 2806/3502/2325 2818/3495/2318 -f 2803/3501/2324 2802/3548/2368 2806/3502/2325 -f 2798/3503/2326 2802/3548/2368 2803/3501/2324 -f 2794/3435/2259 2798/3503/2326 2799/3504/2327 -f 2414/3505/2328 2777/3543/2363 2776/3506/2275 -f 2782/1792/1206 2839/3485/2308 2838/3487/2310 -f 2413/3507/2329 2765/3552/2371 2764/3508/2330 -f 2411/2036/1416 2757/3533/2354 2756/3441/2265 -f 1297/1727/1143 2749/1729/1145 2748/3493/2316 -f 2868/3462/2286 2757/3533/2354 2411/2036/1416 -f 2763/3467/2290 2766/3428/2252 2767/3429/2253 -f 2435/3509/2331 2864/3510/2332 2825/3492/2315 -f 2434/2094/1474 2860/3535/2356 2864/3510/2332 -f 2856/3511/2333 2860/3535/2356 2434/2094/1474 -f 2432/3512/2334 2852/3513/2335 2856/3511/2333 -f 2431/2108/1488 2848/3514/2336 2852/3513/2335 -f 2429/3457/2281 2844/3456/2280 2848/3514/2336 -f 2810/3479/2302 2811/3478/2301 2814/3480/2303 -f 2774/3515/2304 2775/3551/2359 2778/3431/2255 -f 2840/3516/2337 2781/3541/2361 2713/316/292 -f 2836/3517/2338 2840/3516/2337 2427/2131/1511 -f 2788/3519/2340 2777/3543/2363 2414/3505/2328 -f 2425/2136/1516 2832/3446/2270 2836/3517/2338 -f 2822/3491/2314 2823/3544/2364 2826/3443/2267 -f 2820/3520/2341 2753/3465/2289 1288/3464/2288 -f 2754/3496/2319 2755/3546/2366 2758/3522/2343 -f 2817/3523/2344 2805/3547/2367 2421/3524/2345 -f 2861/3525/2346 2857/3530/2351 2870/3526/2347 -f 2421/3524/2345 2805/3547/2367 2801/3527/2348 -f 2801/3527/2348 2797/3529/2350 2419/3528/2349 -f 2797/3529/2350 2793/3549/2369 2418/2068/1448 -f 2418/2068/1448 2793/3549/2369 2789/3483/2306 -f 1348/1745/1160 2736/1744/1159 2751/1722/1138 -f 2857/3530/2351 2853/1716/1132 2869/1715/1131 -f 2769/1826/1239 2765/3552/2371 2413/3507/2329 -f 2808/1735/1151 2820/3520/2341 1272/3521/2342 -f 1328/1838/1250 1324/1775/1190 2743/1774/1189 -f 2759/3425/2249 2866/3427/2251 2865/1781/1196 -f 2867/3426/2250 2758/3522/2343 2757/3533/2354 -f 2866/3427/2251 2762/3468/2291 2761/1779/1194 -f 2763/3467/2290 2867/3426/2250 2868/3462/2286 -f 2827/3445/2269 2862/3444/2268 2861/3525/2346 -f 2863/3534/2355 2826/3443/2267 2825/3492/2315 -f 2861/3525/2346 2862/3444/2268 2858/3471/2294 -f 2859/3470/2293 2863/3534/2355 2864/3510/2332 -f 2857/3530/2351 2858/3471/2294 2854/3472/2295 -f 2856/3511/2333 2855/3536/2357 2859/3470/2293 -f 2853/1716/1132 2854/3472/2295 2850/3474/2297 -f 2852/3513/2335 2851/3473/2296 2855/3536/2357 -f 2850/3474/2297 2846/3476/2299 2845/3460/2284 -f 2847/3475/2298 2851/3473/2296 2852/3513/2335 -f 2845/3460/2284 2846/3476/2299 2842/3477/2300 -f 2844/3456/2280 2843/3537/2358 2847/3475/2298 -f 2842/3477/2300 2810/3479/2302 2809/1812/1225 -f 2812/3499/2322 2811/3478/2301 2843/3537/2358 -f 2815/3482/2305 2774/3481/2304 2773/3538/1155 -f 2775/3539/2359 2814/3480/2303 2813/3540/2360 -f 2784/1763/1178 2783/1793/1207 2838/3487/2310 -f 2840/3516/2337 2839/3485/2308 2782/1792/1206 -f 2838/3487/2310 2834/3486/2309 2833/1719/1135 -f 2835/3542/2362 2839/3485/2308 2840/3516/2337 -f 2779/3433/2257 2786/3432/2256 2785/1694/1110 -f 2787/3488/2311 2778/3431/2255 2777/3543/2363 -f 2833/1719/1135 2834/3486/2309 2830/3490/2313 -f 2832/3446/2270 2831/3489/2312 2835/3542/2362 -f 2830/3490/2313 2822/3491/2314 2821/3447/2271 -f 2823/3544/2364 2831/3489/2312 2832/3446/2270 -f 2821/3447/2271 2822/3491/2314 2827/3445/2269 -f 2826/3443/2267 2823/3544/2364 2824/3545/2365 -f 2820/3520/2341 2819/3497/2320 2754/3496/2319 -f 2755/3546/2366 2818/3495/2318 2817/3523/2344 -f 2808/1735/1151 2807/3500/2323 2819/3497/2320 -f 2818/3495/2318 2806/3502/2325 2805/3547/2367 -f 2809/1812/1225 2810/3479/2302 2815/3482/2305 -f 2813/3540/2360 2814/3480/2303 2811/3478/2301 -f 2803/3501/2324 2807/3500/2323 2808/1735/1151 -f 2805/3547/2367 2806/3502/2325 2802/3548/2368 -f 2799/3504/2327 2803/3501/2324 2804/1737/1153 -f 2802/3548/2368 2798/3503/2326 2797/3529/2350 -f 2796/1678/1094 2795/3436/2260 2799/3504/2327 -f 2798/3503/2326 2794/3435/2259 2793/3549/2369 -f 2791/3434/2258 2795/3436/2260 2796/1678/1094 -f 2793/3549/2369 2794/3435/2259 2790/3550/2370 -f 2786/3432/2256 2791/3434/2258 2792/1815/1228 -f 2790/3550/2370 2787/3488/2311 2788/3519/2340 -f 2773/1740/1155 2774/3515/2304 2779/3433/2257 -f 2777/3543/2363 2778/3431/2255 2775/3551/2359 -f 2768/3455/2279 2767/3429/2253 2771/1673/1089 -f 2769/1826/1239 2770/1841/1252 2766/3428/2252 -f 2762/3468/2291 2767/3429/2253 2768/3455/2279 -f 2766/3428/2252 2763/3467/2290 2764/3508/2330 -f 2754/3496/2319 2759/3425/2249 2760/3449/2273 -f 2757/3533/2354 2758/3522/2343 2755/3546/2366 -f 2729/3553/1114 2901/3610/2396 2902/3554/2372 -f 3011/3556/2373 3010/3931/2652 2990/3557/2374 -f 2869/3559/1131 2925/3640/2410 2926/3560/2376 -f 1282/3562/2261 2889/3631/2407 2890/3563/2377 -f 2727/3565/1240 2899/3625/2403 2900/3566/2378 -f 2724/3568/1144 2896/3628/2405 2921/3569/2379 -f 2726/3571/2283 2725/3638/1105 2897/3572/2380 -f 2736/3574/1159 2908/3624/2402 2923/3575/2382 -f 2743/3577/1189 2915/3646/2416 2913/3578/2383 -f 1285/3580/2278 2892/3612/2397 2893/3581/2384 -f 2871/3583/1237 2927/3642/2412 2877/3584/2385 -f 1270/3585/1238 2877/3584/2385 2878/3586/2386 -f 2735/3588/1242 2907/3609/2395 2906/3589/2387 -f 1269/3591/1103 2876/3626/2404 2875/3592/2388 -f 2730/3555/1129 2902/3554/2372 2910/3594/2389 -f 1287/3596/2272 2894/3602/2392 2895/3597/2390 -f 1288/3598/2288 2895/3597/2390 2879/3599/2391 -f 2872/3601/1195 2928/3644/2414 2894/3602/2392 -f 1267/3603/2285 2874/3663/2425 2888/3604/2393 -f 1272/3600/2342 2879/3599/2391 2882/3606/2394 -f 2733/3608/1147 2905/3665/2427 2907/3609/2395 -f 2728/3567/1241 2900/3566/2378 2901/3610/2396 -f 1284/3611/2317 2891/3643/2413 2892/3612/2397 -f 1279/3613/1111 2886/3669/2430 2887/3614/2398 -f 2749/3570/1145 2921/3569/2379 2920/3616/2399 -f 1277/3618/2292 2884/3657/2422 2885/3619/2400 -f 1281/3605/1108 2888/3604/2393 2903/3621/2401 -f 2739/3623/2274 2911/3661/2423 2908/3624/2402 -f 2726/3571/2283 2898/3573/2381 2899/3625/2403 -f 1271/3587/1102 2878/3586/2386 2876/3626/2404 -f 2750/3627/1139 2922/3647/2417 2896/3628/2405 -f 2731/3622/1109 2903/3621/2401 2904/3629/2406 -f 1280/3615/1112 2887/3614/2398 2889/3631/2407 -f 1283/3632/1141 2890/4157/2377 2880/3633/2408 -f 1274/3635/1224 2881/3641/2411 2873/3636/2409 -f 2734/3590/2282 2906/3589/2387 2897/3572/2380 -f 2742/3639/1127 2914/3651/2419 2925/3640/2410 -f 1273/3634/1142 2880/3633/2408 2881/3641/2411 -f 2870/3561/2347 2926/3560/2376 2927/3642/2412 -f 1284/3611/2317 2748/3617/2316 2920/3616/2399 -f 1286/3582/2307 2893/3581/2384 2928/3644/2414 -f 2743/3577/1189 2744/3659/1211 2916/3645/2415 -f 2751/3576/1138 2923/3575/2382 2922/3647/2417 -f 2738/3595/1234 2910/3594/2389 2909/3648/2418 -f 2752/3650/1126 2924/3664/2426 2914/3651/2419 -f 1276/3652/1152 1275/3607/2352 2882/3606/2394 -f 2747/3654/1123 2919/4158/2429 2918/3655/2421 -f 1276/3652/1152 2883/3653/2420 2884/3657/2422 -f 2745/3658/2254 2917/3666/2428 2916/3645/2415 -f 2740/3660/2264 2912/3662/2424 2911/3661/2423 -f 2741/3579/2353 2913/3578/2383 2912/3662/2424 -f 1268/3593/1136 2875/3592/2388 2874/3663/2425 -f 1266/3637/2262 2873/3636/2409 2924/3664/2426 -f 2732/3630/2321 2904/3629/2406 2905/3665/2427 -f 2746/3656/1124 2918/3655/2421 2917/3666/2428 -f 2737/3649/1235 2909/3648/2418 2919/3667/2429 -f 1278/3620/1093 2885/3619/2400 2886/3669/2430 -f 2951/4159/2545 2950/4160/2497 2984/4161/2686 -f 2984/4161/2686 2949/4162/2557 2951/4159/2545 -f 2949/4162/2557 2948/4163/2442 2951/4159/2545 -f 2948/4163/2442 2947/4164/2441 2976/4165/2706 -f 2976/4165/2706 2977/4166/2616 2952/4167/2567 -f 2952/4167/2567 2978/4168/2684 2979/4169/2535 -f 2979/4169/2535 2964/4170/2534 2967/4171/2656 -f 2967/4171/2656 2968/4172/2603 2969/4173/2548 -f 2969/4173/2548 2971/4174/2516 2972/3670/2431 -f 2972/3670/2431 2973/4175/2522 2974/4176/2680 -f 2974/4176/2680 2975/4177/2550 2965/4178/2672 -f 2965/4178/2672 2966/4179/2525 2958/4180/2670 -f 2958/4180/2670 2957/4181/2519 2965/4178/2672 -f 2957/4181/2519 2956/4182/2669 2965/4178/2672 -f 2956/4182/2669 2955/4183/2532 2954/4184/2531 -f 2954/4184/2531 2953/4185/2538 2956/4182/2669 -f 2953/4185/2538 2962/4186/2537 2956/4182/2669 -f 2962/4186/2537 2963/4187/2694 2961/4188/2611 -f 2961/4188/2611 2960/4189/2511 2962/4186/2537 -f 2960/4189/2511 2959/3671/2432 2962/4186/2537 -f 2959/3671/2432 2944/4190/2696 2930/4191/2642 -f 2930/4191/2642 2931/4192/2561 2959/3671/2432 -f 2931/4192/2561 2932/4193/2459 2959/3671/2432 -f 2932/4193/2459 2934/4194/2697 2933/4195/2646 -f 2933/4195/2646 2983/4196/2688 2982/4197/2488 -f 2982/4197/2488 2981/4198/2487 2970/4199/2635 -f 2970/4199/2635 2980/4200/2483 2929/4201/2482 -f 2929/4201/2482 2937/4202/2564 2936/4203/2466 -f 2936/4203/2466 2946/4204/2465 2945/3672/2433 -f 2945/3672/2433 2943/4205/2448 2942/4206/2447 -f 2942/4206/2447 2941/4207/2454 2945/3672/2433 -f 2941/4207/2454 2940/4208/2453 2945/3672/2433 -f 2940/4208/2453 2939/4209/2654 2938/4210/2626 -f 2938/4210/2626 2935/4211/2562 2951/4159/2545 -f 2948/4163/2442 2976/4165/2706 2951/4159/2545 -f 2976/4165/2706 2952/4167/2567 2951/4159/2545 -f 2952/4167/2567 2979/4169/2535 2972/3670/2431 -f 2979/4169/2535 2967/4171/2656 2972/3670/2431 -f 2967/4171/2656 2969/4173/2548 2972/3670/2431 -f 2972/3670/2431 2974/4176/2680 2965/4178/2672 -f 2932/4193/2459 2933/4195/2646 2982/4197/2488 -f 2982/4197/2488 2970/4199/2635 2929/4201/2482 -f 2929/4201/2482 2936/4203/2466 2982/4197/2488 -f 2936/4203/2466 2945/3672/2433 2982/4197/2488 -f 2940/4208/2453 2938/4210/2626 2945/3672/2433 -f 2938/4210/2626 2951/4159/2545 2945/3672/2433 -f 2972/3670/2431 2965/4178/2672 2959/3671/2432 -f 2965/4178/2672 2956/4182/2669 2959/3671/2432 -f 2956/4182/2669 2962/4186/2537 2959/3671/2432 -f 2959/3671/2432 2932/4193/2459 2945/3672/2433 -f 2932/4193/2459 2982/4197/2488 2945/3672/2433 -f 2951/4159/2545 2952/4167/2567 2945/3672/2433 -f 2952/4167/2567 2972/3670/2431 2945/3672/2433 -f 3102/3673/2434 3103/3900/2627 2998/3674/2435 -f 3007/3676/2437 3014/3922/2644 3015/3677/2438 -f 3012/3679/2440 2992/4007/2705 2947/3680/2441 -f 3023/3682/2443 3022/3928/2650 3018/3683/2444 -f 3024/3685/2446 3020/4002/2700 2942/3686/2447 -f 3031/3688/2449 3055/3918/2640 3054/3689/2450 -f 3013/3691/2452 3008/4005/2703 2940/3692/2453 -f 3043/3694/2455 3042/3921/2643 3038/3695/2456 -f 3040/3697/2458 2934/3997/2697 2932/3698/2459 -f 3051/3700/2461 3139/3883/2613 3138/3701/2462 -f 3056/3703/2464 3032/4000/2699 2946/3704/2465 -f 3207/3706/2467 3206/3834/2573 3062/3707/2468 -f 3071/3709/2470 3082/3906/2631 3083/3710/2471 -f 3025/3712/2473 3024/3685/2446 2943/3687/2448 -f 3086/3714/2474 3087/3908/2633 3078/3715/2475 -f 2924/3717/2426 3084/3985/2687 3076/3718/2477 -f 3099/3720/2478 3098/3727/2485 3095/3721/2479 -f 3081/3723/2481 3072/3991/2693 2929/3724/2482 -f 3099/3720/2478 3115/3828/2569 3114/3726/2484 -f 3085/3728/2486 3080/3988/2690 2981/3729/2487 -f 3170/3731/2489 3171/3861/2592 3106/3732/2490 -f 2877/3734/2385 2927/3899/2412 3089/3735/2492 -f 2883/3737/2420 2882/3950/2394 3112/3738/2494 -f 3100/3740/2496 2984/3984/2686 2950/3741/2497 -f 3130/3743/2499 3131/3868/2599 3122/3744/2500 -f 2920/3746/2399 2921/3962/2379 3128/3747/2502 -f 3155/3749/2504 3154/3878/2608 3134/3750/2505 -f 3052/3752/2507 2944/3995/2696 2959/3753/2432 -f 2911/3755/2423 2912/3965/2424 3144/3756/2509 -f 3140/3754/2508 2959/3753/2432 2960/3758/2511 -f 2874/3760/2425 2875/3943/2388 3152/3761/2513 -f 3156/3763/2515 3136/3975/2678 2972/3764/2431 -f 2904/3766/2406 3145/3972/2675 3060/3767/2517 -f 3188/3769/2518 2956/3959/2669 2957/3770/2519 -f 3124/3772/2521 2974/3978/2680 2973/3773/2522 -f 3180/3775/2524 2958/3961/2670 2966/3776/2525 -f 2909/3778/2418 3161/3846/2581 3120/3779/2527 -f 2916/3781/2415 2917/3966/2428 3132/3782/2528 -f 3181/3784/2530 3196/3957/2667 2954/3785/2531 -f 3101/3787/2533 3000/4006/2704 2964/3788/2534 -f 3189/3790/2536 3208/3813/2555 2962/3791/2537 -f 2910/3793/2389 2902/3869/2372 3177/3794/2539 -f 3199/3796/2541 3202/3845/2580 3203/3797/2542 -f 3200/3799/2544 3116/3742/2498 2950/3741/2497 -f 2900/3801/2378 3185/3859/2590 3176/3802/2546 -f 3165/3804/2547 3156/3763/2515 2971/3765/2516 -f 3164/3806/2549 2965/3967/2672 2975/3807/2550 -f 2899/3809/2403 2898/3856/2381 3193/3810/2552 -f 3064/3812/2554 2963/3992/2694 2962/3791/2537 -f 3093/3814/2556 3012/3679/2440 2948/3681/2442 -f 2897/3816/2380 2906/3948/2387 3205/3817/2558 -f 3149/3819/2560 3044/3699/2460 2932/3698/2459 -f 3200/3799/2544 2951/3800/2545 2935/3821/2562 -f 3056/3703/2464 2936/3705/2466 2937/3823/2564 -f 3108/3825/2566 2978/3982/2684 2952/3826/2567 -f 3115/3828/2569 3199/3796/2541 3198/3798/2543 -f 2907/3829/2395 2905/3768/2427 3060/3767/2517 -f 2874/3760/2425 3048/3762/2514 3049/3831/2571 -f 3207/3706/2467 3190/3945/2662 3191/3833/2572 -f 2885/3835/2400 3016/3998/2698 3017/3836/2574 -f 2881/3838/2411 3068/3939/2658 3069/3839/2575 -f 3195/3841/2576 3182/3949/2663 3183/3842/2577 -f 3110/3844/2579 3111/3892/2621 3203/3797/2542 -f 2909/3778/2418 2910/3793/2389 3160/3795/2540 -f 3187/3847/2582 3174/3954/2666 3175/3848/2583 -f 2918/3850/2421 2919/4212/2429 3120/3851/2527 -f 3158/3853/2586 3159/3958/2668 3178/3854/2587 -f 2897/3816/2380 3192/3818/2559 3193/3810/2552 -f 2884/3857/2422 2883/3737/2420 3004/3739/2495 -f 2900/3801/2378 2899/3809/2403 3184/3811/2553 -f 3126/3860/2591 3127/3885/2615 3171/3861/2592 -f 3118/3862/2593 3119/4010/2671 3162/3863/2594 -f 3142/3865/2596 3143/3880/2610 3167/3866/2597 -f 3135/3751/2506 3134/3750/2505 3131/3868/2599 -f 2901/3803/2396 3176/3802/2546 3177/3794/2539 -f 3058/3870/2600 3059/3968/2673 3146/3871/2601 -f 3165/3804/2547 2969/3805/2548 2968/3873/2603 -f 3046/3875/2605 3047/3970/2674 3151/3876/2606 -f 3155/3749/2504 3166/3867/2598 3167/3866/2597 -f 2994/3879/2609 2995/3973/2676 3143/3880/2610 -f 3148/3759/2512 2960/3758/2511 2961/3881/2611 -f 3147/3872/2602 3146/3871/2601 3138/3701/2462 -f 3126/3860/2591 2986/3976/2679 2987/3884/2614 -f 3169/3827/2568 2952/3826/2567 2977/3886/2616 -f 2922/3888/2417 2923/3960/2382 3104/3889/2618 -f 3110/3844/2579 3002/3980/2682 3003/3891/2620 -f 3034/3893/2622 3035/3981/2683 3090/3894/2623 -f 3109/3896/2625 3201/3822/2563 2935/3821/2562 -f 2926/3898/2376 3088/3983/2685 3089/3735/2492 -f 3107/3733/2491 3106/3732/2490 3103/3900/2627 -f 2914/3719/2419 3076/3718/2477 3077/3901/2628 -f 2928/3903/2414 2893/3947/2384 3096/3904/2629 -f 3082/3906/2631 3074/3987/2689 3075/3907/2632 -f 3086/3714/2474 3091/3895/2624 3090/3894/2623 -f 2889/3909/2407 3028/3990/2692 3029/3910/2634 -f 3081/3723/2481 2980/3725/2483 2970/3912/2635 -f 3066/3914/2637 3071/3709/2470 3070/3711/2472 -f 2877/3734/2385 3036/3736/2493 3037/3916/2639 -f 3066/3914/2637 3067/3915/2638 3054/3689/2450 -f 3045/3919/2641 3149/3819/2560 2931/3820/2561 -f 3043/3694/2455 3150/3877/2607 3151/3876/2606 -f 3019/3684/2445 3018/3683/2444 3015/3677/2438 -f 3092/3923/2645 2983/3986/2688 2933/3924/2646 -f 3031/3688/2449 3030/3690/2451 3027/3926/2648 -f 3023/3682/2443 3026/3927/2649 3027/3926/2648 -f 2908/3929/2402 2911/3755/2423 2996/3757/2510 -f 3011/3556/2373 3094/3722/2480 3095/3721/2479 -f 3001/3932/2653 3109/3896/2625 2938/3897/2626 -f 2993/3934/2655 3141/3874/2604 2968/3873/2603 -f 2922/3888/2417 3105/3890/2619 3172/3936/2657 -f 2880/3938/2408 3053/3994/2695 3068/3939/2658 -f 2879/3940/2391 2895/3956/2390 3197/3941/2659 -f 2875/3943/2388 2876/3996/2404 3041/3944/2661 -f 3195/3841/2576 3194/3843/2578 3191/3833/2572 -f 2892/3946/2397 3009/4004/2702 3096/3904/2629 -f 2907/3829/2395 3061/3830/2570 3205/3817/2558 -f 3187/3847/2582 3186/3849/2584 3183/3842/2577 -f 2882/3950/2394 2879/3940/2391 3204/3942/2660 -f 2913/3951/2383 2915/3969/2416 3153/3952/2664 -f 3174/3954/2666 3179/3855/2588 3178/3854/2587 -f 2894/3955/2392 3113/3979/2681 3197/3941/2659 -f 3196/3957/2667 3189/3790/2536 2953/3792/2538 -f 3158/3853/2586 3163/3864/2595 3162/3863/2594 -f 3181/3784/2530 2955/3786/2532 2956/3959/2669 -f 2923/3960/2382 2908/3929/2402 2997/3930/2651 -f 3173/3771/2520 2957/3770/2519 2958/3961/2670 -f 2921/3962/2379 2896/3937/2405 3172/3936/2657 -f 3118/3963/2593 3123/3745/2501 3122/3744/2500 -f 2913/3951/2383 3168/3953/2665 3144/3756/2509 -f 2918/3850/2421 3121/3852/2585 3132/3782/2528 -f 3164/3806/2549 3157/3777/2526 2966/3776/2525 -f 3063/3708/2469 3062/3707/2468 3059/3968/2673 -f 2916/3781/2415 3133/3783/2529 3153/3952/2664 -f 3051/3700/2461 3050/3702/2463 3047/3970/2674 -f 2903/3971/2401 3137/3974/2677 3145/3972/2675 -f 2994/3879/2609 2999/3675/2436 2998/3674/2435 -f 2888/3832/2393 3049/3831/2571 3137/3974/2677 -f 3136/3975/2678 3129/3774/2523 2973/3773/2522 -f 2986/3976/2679 2991/3558/2375 2990/3557/2374 -f 3124/3772/2521 3117/4011/2551 2975/3977/2550 -f 2928/3903/2414 3097/3905/2630 3113/3979/2681 -f 3007/3676/2437 3006/3678/2439 3003/3891/2620 -f 3034/3893/2622 3039/3696/2457 3038/3695/2456 -f 3108/3825/2566 3101/3787/2533 2979/3789/2535 -f 2925/3902/2410 3077/3901/2628 3088/3983/2685 -f 3100/3740/2496 3093/3814/2556 2949/3815/2557 -f 2924/3717/2426 2873/3840/2409 3069/3839/2575 -f 3085/3728/2486 2982/3730/2488 2983/3986/2688 -f 3079/3716/2476 3078/3715/2475 3075/3907/2632 -f 3073/3913/2636 2970/3912/2635 2981/3729/2487 -f 2889/3909/2407 2887/4001/2398 3021/3989/2691 -f 3072/3991/2693 3065/3824/2565 2937/3823/2564 -f 3057/3882/2612 2961/3881/2611 2963/3992/2694 -f 2880/3938/2408 2890/4213/2377 3029/3993/2634 -f 3052/3752/2507 3045/3919/2641 2930/3920/2642 -f 2878/3917/2386 3037/3916/2639 3041/3944/2661 -f 3040/3697/2458 3033/3925/2647 2933/3924/2646 -f 2885/3835/2400 2884/3857/2422 3005/3858/2589 -f 3025/3712/2473 2945/3713/2433 2946/3999/2465 -f 2887/4001/2398 2886/3837/2430 3017/3836/2574 -f 3020/4002/2700 3013/3691/2452 2941/3693/2454 -f 2892/3946/2397 2891/4009/2413 2989/4003/2701 -f 3001/3932/2653 2939/3933/2654 2940/3692/2453 -f 2993/3934/2655 2967/3935/2656 2964/3788/2534 -f 2992/4007/2705 2985/4012/2707 2976/4008/2706 -f 2920/3746/2399 2988/3748/2503 2989/4003/2701 -f 3108/3825/2566 3169/3827/2568 3170/3731/2489 -f 3105/3890/2619 3106/3732/2490 3171/3861/2592 -f 3065/3824/2565 3066/3914/2637 3055/3918/2640 -f 3053/3994/2695 3054/3689/2450 3067/3915/2638 -f 3201/3822/2563 3202/3845/2580 3199/3796/2541 -f 3197/3941/2659 3198/3798/2543 3203/3797/2542 -f 3044/3699/2460 3149/3819/2560 3150/3877/2607 -f 3152/3761/2513 3041/3944/2661 3042/3921/2643 -f 3208/3813/2555 3189/3790/2536 3190/3945/2662 -f 3192/3818/2559 3205/3817/2558 3206/3834/2573 -f 3012/3679/2440 3093/3814/2556 3094/3722/2480 -f 3009/4004/2702 3010/3931/2652 3095/3721/2479 -f 3208/3813/2555 3207/3706/2467 3063/3708/2469 -f 3205/3817/2558 3061/3830/2570 3062/3707/2468 -f 3196/3957/2667 3181/3784/2530 3182/3949/2663 -f 3184/3811/2553 3193/3810/2552 3194/3843/2578 -f 3201/3822/2563 3109/3896/2625 3110/3844/2579 -f 3204/3942/2660 3203/3797/2542 3111/3892/2621 -f 3165/3804/2547 3166/3867/2598 3155/3749/2504 -f 3168/3953/2665 3153/3952/2664 3154/3878/2608 -f 3173/3771/2520 3174/3954/2666 3187/3847/2582 -f 3176/3802/2546 3185/3859/2590 3186/3849/2584 -f 3116/3742/2498 3200/3799/2544 3199/3796/2541 -f 3197/3941/2659 3113/3979/2681 3114/3726/2484 -f 3196/3957/2667 3195/3841/2576 3190/3945/2662 -f 3192/3818/2559 3191/3833/2572 3194/3843/2578 -f 3157/3777/2526 3158/3853/2586 3179/3855/2588 -f 3177/3794/2539 3178/3854/2587 3159/3958/2668 -f 3188/3769/2518 3187/3847/2582 3182/3949/2663 -f 3184/3811/2553 3183/3842/2577 3186/3849/2584 -f 3000/4006/2704 3101/3787/2533 3102/3673/2434 -f 3104/3889/2618 2997/3930/2651 2998/3674/2435 -f 3180/3775/2524 3179/3855/2588 3174/3954/2666 -f 3177/3794/2539 3176/3802/2546 3175/3848/2583 -f 3125/3887/2617 3126/3860/2591 3170/3731/2489 -f 3172/3936/2657 3171/3861/2592 3127/3885/2615 -f 3117/3808/2551 3118/3862/2593 3163/3864/2595 -f 3161/3846/2581 3162/3863/2594 3119/4010/2671 -f 3165/3804/2547 3141/3874/2604 3142/3865/2596 -f 3168/3953/2665 3167/3866/2597 3143/3880/2610 -f 3129/3774/2523 3130/3743/2499 3123/3745/2501 -f 3121/3852/2585 3122/3744/2500 3131/3868/2599 -f 3157/3777/2526 3164/3806/2549 3163/3864/2595 -f 3161/3846/2581 3160/3795/2540 3159/3958/2668 -f 3148/3759/2512 3057/3882/2612 3058/3870/2600 -f 3060/3767/2517 3145/3972/2675 3146/3871/2601 -f 3136/3975/2678 3156/3763/2515 3155/3749/2504 -f 3133/3783/2529 3134/3750/2505 3154/3878/2608 -f 3149/3819/2560 3045/3919/2641 3046/3875/2605 -f 3048/3762/2514 3152/3761/2513 3151/3876/2606 -f 3148/3759/2512 3147/3872/2602 3139/3883/2613 -f 3137/3974/2677 3138/3701/2462 3146/3871/2601 -f 3141/3874/2604 2993/3934/2655 2994/3879/2609 -f 2996/3757/2510 3144/3756/2509 3143/3880/2610 -f 3052/3752/2507 3140/3754/2508 3139/3883/2613 -f 3137/3974/2677 3049/3831/2571 3050/3702/2463 -f 3136/3975/2678 3135/3751/2506 3130/3743/2499 -f 3133/3783/2529 3132/3782/2528 3131/3868/2599 -f 3125/3887/2617 2985/4012/2707 2986/3976/2679 -f 2988/3748/2503 3128/3747/2502 3127/3885/2615 -f 3117/4011/2551 3124/3772/2521 3123/3745/2501 -f 3121/3852/2585 3120/3851/2527 3119/3964/2671 -f 3116/3742/2498 3115/3828/2569 3099/3720/2478 -f 3113/3979/2681 3097/3905/2630 3098/3727/2485 -f 3109/3896/2625 3001/3932/2653 3002/3980/2682 -f 3004/3739/2495 3112/3738/2494 3111/3892/2621 -f 3033/3925/2647 3034/3893/2622 3091/3895/2624 -f 3036/3736/2493 3089/3735/2492 3090/3894/2623 -f 3108/3825/2566 3107/3733/2491 3102/3673/2434 -f 3104/3889/2618 3103/3900/2627 3106/3732/2490 -f 3080/3988/2690 3085/3728/2486 3086/3714/2474 -f 3088/3983/2685 3077/3901/2628 3078/3715/2475 -f 3093/3814/2556 3100/3740/2496 3099/3720/2478 -f 3096/3904/2629 3095/3721/2479 3098/3727/2485 -f 3081/3723/2481 3082/3906/2631 3071/3709/2470 -f 3084/3985/2687 3069/3839/2575 3070/3711/2472 -f 3085/3728/2486 3092/3923/2645 3091/3895/2624 -f 3089/3735/2492 3088/3983/2685 3087/3908/2633 -f 3073/3913/2636 3074/3987/2689 3082/3906/2631 -f 3084/3985/2687 3083/3710/2471 3075/3907/2632 -f 3073/3913/2636 3080/3988/2690 3079/3716/2476 -f 3076/3718/2477 3075/3907/2632 3078/3715/2475 -f 3024/3685/2446 3025/3712/2473 3026/3927/2649 -f 3028/3990/2692 3021/3989/2691 3022/3928/2650 -f 3065/3824/2565 3072/3991/2693 3071/3709/2470 -f 3069/3839/2575 3068/3939/2658 3067/3915/2638 -f 3064/3812/2554 3063/3708/2469 3058/3870/2600 -f 3060/3767/2517 3059/3968/2673 3062/3707/2468 -f 3032/4000/2699 3056/3703/2464 3055/3918/2640 -f 3053/3994/2695 3029/3993/2634 3030/3690/2451 -f 3052/3752/2507 3051/3700/2461 3046/3875/2605 -f 3049/3831/2571 3048/3762/2514 3047/3970/2674 -f 3044/3699/2460 3043/3694/2455 3039/3696/2457 -f 3037/3916/2639 3038/3695/2456 3042/3921/2643 -f 3033/3925/2647 3040/3697/2458 3039/3696/2457 -f 3036/3736/2493 3035/3981/2683 3038/3695/2456 -f 3008/4005/2703 3013/3691/2452 3014/3922/2644 -f 3005/3858/2589 3006/3678/2439 3015/3677/2438 -f 3032/4000/2699 3031/3688/2449 3026/3927/2649 -f 3028/3990/2692 3027/3926/2648 3030/3690/2451 -f 3024/3685/2446 3023/3682/2443 3019/3684/2445 -f 3021/3989/2691 3017/3836/2574 3018/3683/2444 -f 3013/3691/2452 3020/4002/2700 3019/3684/2445 -f 3017/3836/2574 3016/3998/2698 3015/3677/2438 -f 3012/3679/2440 3011/3556/2373 2991/3558/2375 -f 2989/4003/2701 2990/3557/2374 3010/3931/2652 -f 3008/4005/2703 3007/3676/2437 3002/3980/2682 -f 3004/3739/2495 3003/3891/2620 3006/3678/2439 -f 3000/4006/2704 2999/3675/2436 2994/3879/2609 -f 2996/3757/2510 2995/3973/2676 2998/3674/2435 -f 2992/4007/2705 2991/3558/2375 2986/3976/2679 -f 2989/4003/2701 2988/3748/2503 2987/3884/2614 -f 2985/4012/2707 3125/3887/2617 2977/3886/2616 diff --git a/keyframeChannel.cpp b/keyframeChannel.cpp index 9d7f2a9..049f6a6 100644 --- a/keyframeChannel.cpp +++ b/keyframeChannel.cpp @@ -23,7 +23,7 @@ namespace vb01{ float KeyframeChannel::interpolateBezier(vector points, float ratio){ int numPoints = points.size(); vector newPoints; -for(int i = 0; i < numPoints - 1; i++) + for(int i = 0; i < numPoints - 1; i++) newPoints.push_back(points[i] + (points[i + 1] - points[i]) * ratio); if(newPoints.size() >= 2) @@ -79,4 +79,12 @@ for(int i = 0; i < numPoints - 1; i++) } return keyframeChannel.keyframes[pastKeyframeId + (last ? 0 : 1)]; } + + Keyframe KeyframeChannel::createKeyframe(KeyframeInterpolation interpolation, float frame, float value){ + Keyframe keyframe; + keyframe.interpolation = interpolation; + keyframe.frame = frame; + keyframe.value = value; + return keyframe; + } } diff --git a/keyframeChannel.h b/keyframeChannel.h index 1847aca..eaa6aab 100644 --- a/keyframeChannel.h +++ b/keyframeChannel.h @@ -67,6 +67,7 @@ namespace vb01{ static KeyframeChannel::Type getKeyframeChannelType(std::string); static float interpolate(Keyframe, Keyframe, float); static Keyframe findKeyframe(float, KeyframeChannel, bool); + static Keyframe createKeyframe(Keyframe::Interpolation, float, float); }; typedef KeyframeChannel::Type KeyframeChannelType; diff --git a/khrplatform.h b/khrplatform.h deleted file mode 100644 index dd22d92..0000000 --- a/khrplatform.h +++ /dev/null @@ -1,290 +0,0 @@ -#ifndef __khrplatform_h_ -#define __khrplatform_h_ - -/* -** Copyright (c) 2008-2018 The Khronos Group Inc. -** -** Permission is hereby granted, free of charge, to any person obtaining a -** copy of this software and/or associated documentation files (the -** "Materials"), to deal in the Materials without restriction, including -** without limitation the rights to use, copy, modify, merge, publish, -** distribute, sublicense, and/or sell copies of the Materials, and to -** permit persons to whom the Materials are 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 Materials. -** -** THE MATERIALS ARE 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 -** MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS. -*/ - -/* Khronos platform-specific types and definitions. - * - * The master copy of khrplatform.h is maintained in the Khronos EGL - * Registry repository at https://github.com/KhronosGroup/EGL-Registry - * The last semantic modification to khrplatform.h was at commit ID: - * 67a3e0864c2d75ea5287b9f3d2eb74a745936692 - * - * Adopters may modify this file to suit their platform. Adopters are - * encouraged to submit platform specific modifications to the Khronos - * group so that they can be included in future versions of this file. - * Please submit changes by filing pull requests or issues on - * the EGL Registry repository linked above. - * - * - * See the Implementer's Guidelines for information about where this file - * should be located on your system and for more details of its use: - * http://www.khronos.org/registry/implementers_guide.pdf - * - * This file should be included as - * #include - * by Khronos client API header files that use its types and defines. - * - * The types in khrplatform.h should only be used to define API-specific types. - * - * Types defined in khrplatform.h: - * khronos_int8_t signed 8 bit - * khronos_uint8_t unsigned 8 bit - * khronos_int16_t signed 16 bit - * khronos_uint16_t unsigned 16 bit - * khronos_int32_t signed 32 bit - * khronos_uint32_t unsigned 32 bit - * khronos_int64_t signed 64 bit - * khronos_uint64_t unsigned 64 bit - * khronos_intptr_t signed same number of bits as a pointer - * khronos_uintptr_t unsigned same number of bits as a pointer - * khronos_ssize_t signed size - * khronos_usize_t unsigned size - * khronos_float_t signed 32 bit floating point - * khronos_time_ns_t unsigned 64 bit time in nanoseconds - * khronos_utime_nanoseconds_t unsigned time interval or absolute time in - * nanoseconds - * khronos_stime_nanoseconds_t signed time interval in nanoseconds - * khronos_boolean_enum_t enumerated boolean type. This should - * only be used as a base type when a client API's boolean type is - * an enum. Client APIs which use an integer or other type for - * booleans cannot use this as the base type for their boolean. - * - * Tokens defined in khrplatform.h: - * - * KHRONOS_FALSE, KHRONOS_TRUE Enumerated boolean false/true values. - * - * KHRONOS_SUPPORT_INT64 is 1 if 64 bit integers are supported; otherwise 0. - * KHRONOS_SUPPORT_FLOAT is 1 if floats are supported; otherwise 0. - * - * Calling convention macros defined in this file: - * KHRONOS_APICALL - * KHRONOS_APIENTRY - * KHRONOS_APIATTRIBUTES - * - * These may be used in function prototypes as: - * - * KHRONOS_APICALL void KHRONOS_APIENTRY funcname( - * int arg1, - * int arg2) KHRONOS_APIATTRIBUTES; - */ - -#if defined(__SCITECH_SNAP__) && !defined(KHRONOS_STATIC) -# define KHRONOS_STATIC 1 -#endif - -/*------------------------------------------------------------------------- - * Definition of KHRONOS_APICALL - *------------------------------------------------------------------------- - * This precedes the return type of the function in the function prototype. - */ -#if defined(KHRONOS_STATIC) - /* If the preprocessor constant KHRONOS_STATIC is defined, make the - * header compatible with static linking. */ -# define KHRONOS_APICALL -#elif defined(_WIN32) -# define KHRONOS_APICALL __declspec(dllimport) -#elif defined (__SYMBIAN32__) -# define KHRONOS_APICALL IMPORT_C -#elif defined(__ANDROID__) -# define KHRONOS_APICALL __attribute__((visibility("default"))) -#else -# define KHRONOS_APICALL -#endif - -/*------------------------------------------------------------------------- - * Definition of KHRONOS_APIENTRY - *------------------------------------------------------------------------- - * This follows the return type of the function and precedes the function - * name in the function prototype. - */ -#if defined(_WIN32) && !defined(_WIN32_WCE) && !defined(__SCITECH_SNAP__) - /* Win32 but not WinCE */ -# define KHRONOS_APIENTRY __stdcall -#else -# define KHRONOS_APIENTRY -#endif - -/*------------------------------------------------------------------------- - * Definition of KHRONOS_APIATTRIBUTES - *------------------------------------------------------------------------- - * This follows the closing parenthesis of the function prototype arguments. - */ -#if defined (__ARMCC_2__) -#define KHRONOS_APIATTRIBUTES __softfp -#else -#define KHRONOS_APIATTRIBUTES -#endif - -/*------------------------------------------------------------------------- - * basic type definitions - *-----------------------------------------------------------------------*/ -#if (defined(__STDC_VERSION__) && __STDC_VERSION__ >= 199901L) || defined(__GNUC__) || defined(__SCO__) || defined(__USLC__) - - -/* - * Using - */ -#include -typedef int32_t khronos_int32_t; -typedef uint32_t khronos_uint32_t; -typedef int64_t khronos_int64_t; -typedef uint64_t khronos_uint64_t; -#define KHRONOS_SUPPORT_INT64 1 -#define KHRONOS_SUPPORT_FLOAT 1 - -#elif defined(__VMS ) || defined(__sgi) - -/* - * Using - */ -#include -typedef int32_t khronos_int32_t; -typedef uint32_t khronos_uint32_t; -typedef int64_t khronos_int64_t; -typedef uint64_t khronos_uint64_t; -#define KHRONOS_SUPPORT_INT64 1 -#define KHRONOS_SUPPORT_FLOAT 1 - -#elif defined(_WIN32) && !defined(__SCITECH_SNAP__) - -/* - * Win32 - */ -typedef __int32 khronos_int32_t; -typedef unsigned __int32 khronos_uint32_t; -typedef __int64 khronos_int64_t; -typedef unsigned __int64 khronos_uint64_t; -#define KHRONOS_SUPPORT_INT64 1 -#define KHRONOS_SUPPORT_FLOAT 1 - -#elif defined(__sun__) || defined(__digital__) - -/* - * Sun or Digital - */ -typedef int khronos_int32_t; -typedef unsigned int khronos_uint32_t; -#if defined(__arch64__) || defined(_LP64) -typedef long int khronos_int64_t; -typedef unsigned long int khronos_uint64_t; -#else -typedef long long int khronos_int64_t; -typedef unsigned long long int khronos_uint64_t; -#endif /* __arch64__ */ -#define KHRONOS_SUPPORT_INT64 1 -#define KHRONOS_SUPPORT_FLOAT 1 - -#elif 0 - -/* - * Hypothetical platform with no float or int64 support - */ -typedef int khronos_int32_t; -typedef unsigned int khronos_uint32_t; -#define KHRONOS_SUPPORT_INT64 0 -#define KHRONOS_SUPPORT_FLOAT 0 - -#else - -/* - * Generic fallback - */ -#include -typedef int32_t khronos_int32_t; -typedef uint32_t khronos_uint32_t; -typedef int64_t khronos_int64_t; -typedef uint64_t khronos_uint64_t; -#define KHRONOS_SUPPORT_INT64 1 -#define KHRONOS_SUPPORT_FLOAT 1 - -#endif - - -/* - * Types that are (so far) the same on all platforms - */ -typedef signed char khronos_int8_t; -typedef unsigned char khronos_uint8_t; -typedef signed short int khronos_int16_t; -typedef unsigned short int khronos_uint16_t; - -/* - * Types that differ between LLP64 and LP64 architectures - in LLP64, - * pointers are 64 bits, but 'long' is still 32 bits. Win64 appears - * to be the only LLP64 architecture in current use. - */ -#ifdef _WIN64 -typedef signed long long int khronos_intptr_t; -typedef unsigned long long int khronos_uintptr_t; -typedef signed long long int khronos_ssize_t; -typedef unsigned long long int khronos_usize_t; -#else -typedef signed long int khronos_intptr_t; -typedef unsigned long int khronos_uintptr_t; -typedef signed long int khronos_ssize_t; -typedef unsigned long int khronos_usize_t; -#endif - -#if KHRONOS_SUPPORT_FLOAT -/* - * Float type - */ -typedef float khronos_float_t; -#endif - -#if KHRONOS_SUPPORT_INT64 -/* Time types - * - * These types can be used to represent a time interval in nanoseconds or - * an absolute Unadjusted System Time. Unadjusted System Time is the number - * of nanoseconds since some arbitrary system event (e.g. since the last - * time the system booted). The Unadjusted System Time is an unsigned - * 64 bit value that wraps back to 0 every 584 years. Time intervals - * may be either signed or unsigned. - */ -typedef khronos_uint64_t khronos_utime_nanoseconds_t; -typedef khronos_int64_t khronos_stime_nanoseconds_t; -#endif - -/* - * Dummy value used to pad enum types to 32 bits. - */ -#ifndef KHRONOS_MAX_ENUM -#define KHRONOS_MAX_ENUM 0x7FFFFFFF -#endif - -/* - * Enumerated boolean type - * - * Values other than zero should be considered to be true. Therefore - * comparisons should not be made against KHRONOS_TRUE. - */ -typedef enum { - KHRONOS_FALSE = 0, - KHRONOS_TRUE = 1, - KHRONOS_BOOLEAN_ENUM_FORCE_SIZE = KHRONOS_MAX_ENUM -} khronos_boolean_enum_t; - -#endif /* __khrplatform_h_ */ diff --git a/lightSample.cpp b/lightSample.cpp new file mode 100644 index 0000000..ffa047a --- /dev/null +++ b/lightSample.cpp @@ -0,0 +1,56 @@ +#include "root.h" +#include "box.h" +#include "material.h" +#include "node.h" +#include "light.h" + +using namespace std; +using namespace vb01; + +int main(){ + const string PATH = "../", TEX_PATH = PATH + "samples/textures/", MODEL_PATH = PATH + "samples/models/"; + string skyboxTextures[] = { + TEX_PATH + "top.jpg", + TEX_PATH + "bottom.jpg", + TEX_PATH + "left.jpg", + TEX_PATH + "right.jpg", + TEX_PATH + "front.jpg", + TEX_PATH + "back.jpg" + }; + + Root *root = Root::getSingleton(); + root->start(800, 600, PATH, "Light sample"); + root->createSkybox(skyboxTextures); + Node *rootNode = root->getRootNode(); + + Camera *cam = root->getCamera(); + cam->setPosition(Vector3(0, 1, 1) * 30); + cam->lookAt(Vector3(0, -1, -1).norm(), Vector3(0, 1, -1).norm()); + + Box *box = new Box(Vector3(20, 1, 20)); + Node *boxNode = new Node(); + + Material *mat = new Material(); + mat->setTexturingEnabled(true); + mat->setLightingEnabled(true); + string images[] = {TEX_PATH + "bricks.jpg"}; + Texture *texture = new Texture(images, 1); + mat->addDiffuseMap(texture); + box->setMaterial(mat); + + boxNode->attachMesh(box); + rootNode->attachChild(boxNode); + + Light *light = new Light(Light::SPOT); + light->setColor(Vector3(1, 1, 1)); + Node *lightNode = new Node(); + lightNode->addLight(light); + rootNode->attachChild(lightNode); + lightNode->setOrientation(Quaternion(1.57, Vector3(1, 0, 0))); + lightNode->setPosition(Vector3(0, 2, 0)); + + while(true) + root->update(); + + return 0; +} diff --git a/morphAnimationSample.cpp b/morphAnimationSample.cpp new file mode 100644 index 0000000..cec6456 --- /dev/null +++ b/morphAnimationSample.cpp @@ -0,0 +1,67 @@ +#include "root.h" +#include "model.h" +#include "material.h" +#include "mesh.h" +#include "skeleton.h" +#include "animationController.h" +#include "animationChannel.h" +#include "box.h" + +using namespace std; +using namespace vb01; + +int main(){ + const string PATH = "../", TEX_PATH = PATH + "samples/textures/", MODEL_PATH = PATH + "samples/models/"; + string skyboxTextures[] = { + TEX_PATH + "top.jpg", + TEX_PATH + "bottom.jpg", + TEX_PATH + "left.jpg", + TEX_PATH + "right.jpg", + TEX_PATH + "front.jpg", + TEX_PATH + "back.jpg" + }; + + Root *root = Root::getSingleton(); + root->start(800, 600, PATH, "Morph animation sample"); + root->createSkybox(skyboxTextures); + Node *rootNode = root->getRootNode(); + + Camera *cam = root->getCamera(); + cam->setPosition(Vector3(-1, 0.25, .2) * 20); + cam->lookAt(Vector3(1, 0, 0).norm(), Vector3(0, 1, 0).norm()); + + Model *model = new Model(MODEL_PATH + "kek.vb"); + Material *mat = new Material(); + mat->setLightingEnabled(false); + mat->setTexturingEnabled(true); + string images[] = {TEX_PATH + "defaultTexture.jpg"}; + Texture *texture = new Texture(images, 1); + mat->addDiffuseMap(texture); + model->setMaterial(mat); + rootNode->attachChild(model); + + int numChildren = model->getNumChildren(); + Node *node = model->getChild(1); + Mesh *mesh = node->getMesh(0); + Skeleton *skeleton = mesh->getSkeleton(); + + AnimationController *controller = skeleton->getAnimationController(); + AnimationChannel *channel = new AnimationChannel(controller); + channel->addAnimatable(skeleton->getBone("bone")); + channel->setAnimationName("morph"); + channel->setLoop(true); + controller->addAnimationChannel(channel); + + Box *box = new Box(Vector3(1, 1, 1) * .25); + Material *boxMat = new Material(); + boxMat->setTexturingEnabled(false); + boxMat->setDiffuseColor(Vector4(1, 0, 0, 1)); + box->setMaterial(boxMat); + skeleton->getBone("bone")->attachMesh(box); + + while(true){ + root->update(); + } + + return 0; +} diff --git a/root.cpp b/root.cpp index 33c5f26..ba64849 100755 --- a/root.cpp +++ b/root.cpp @@ -123,10 +123,10 @@ namespace vb01{ if(skybox){ glDepthMask(GL_FALSE); - //glCullFace(GL_FRONT); + glCullFace(GL_FRONT); skybox->update(); glDepthMask(GL_TRUE); - //glCullFace(GL_BACK); + glCullFace(GL_BACK); } rootNode->update(); diff --git a/samples/models/kek.vb b/samples/models/kek.vb new file mode 100644 index 0000000..26e3da2 --- /dev/null +++ b/samples/models/kek.vb @@ -0,0 +1,2390 @@ +{ +MESH: Cube +pos: 0.0 0.0 0.0 +rot: 1.0 0.0 0.0 -0.0 +scale: 1.0 1.0 1.0 +parent: - +skeleton: Armature +numElements: 256 488 14 2 +groups: +rootBone +pelvis +chest +upperArm.L +lowerArm.L +upperArm.R +lowerArm.R +upperLeg.L +lowerLeg.L +foot.L +head +upperLeg.R +lowerLeg.R +foot.R +vertices: +0.6571227312088013 0.6571227312088013 8.111547470092773 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +0.6571227312088013 0.6571227312088013 6.797300815582275 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +0.6571227312088013 -0.6571227312088013 8.111547470092773 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +0.6571227312088013 -0.6571227312088013 6.797300815582275 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 6.465208530426025 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 1.2225744724273682 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.29340681433677673 0.7065932154655457 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 6.465208530426025 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.9843971729278564 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 1.2225744724273682 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.29340681433677673 0.7065932750701904 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 1.530964732170105 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340681433677673 0.7065932750701904 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 1.8393549919128418 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340681433677673 0.7065932750701904 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 2.147745132446289 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340678453445435 0.7065932750701904 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 2.4561352729797363 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.20756271481513977 0.7924373149871826 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 2.7645254135131836 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.14693543314933777 0.8530645370483398 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 3.072915554046631 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.10415935516357422 0.8958406448364258 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 3.3813059329986572 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0740375816822052 0.9259623885154724 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 3.6896963119506836 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.05291064456105232 0.9470892548561096 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 3.998086452484131 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.02642369642853737 0.9617880582809448 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 4.306476593017578 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0063108280301094055 0.971844494342804 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 4.614866733551025 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9784803986549377 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 4.923256874084473 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9825018048286438 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 5.23164701461792 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843973517417908 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 5.540037155151367 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 5.848427772521973 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 -0.18796253204345703 6.156818389892578 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 6.156818389892578 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 5.848428249359131 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.984397292137146 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 5.540038108825684 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843973517417908 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 5.231647968292236 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843974113464355 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 4.923257827758789 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9825018644332886 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 4.614867687225342 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9784804582595825 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 4.3064775466918945 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0063107796013355255 0.9718446731567383 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 3.998087167739868 0.7070833444595337 0.7070833444595337 0.0 0.0 0.02642364613711834 0.9617881774902344 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 3.689696788787842 0.7070833444595337 0.7070833444595337 0.0 0.0 0.05291061848402023 0.9470893740653992 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 3.3813064098358154 0.7070833444595337 0.7070833444595337 0.0 0.0 0.07403754442930222 0.9259624481201172 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 3.072916030883789 0.7070833444595337 0.7070833444595337 0.0 0.0 0.10415930300951004 0.8958407044410706 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 2.764525890350342 0.7070833444595337 0.7070833444595337 0.0 0.0 0.146935373544693 0.8530646562576294 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 2.4561355113983154 0.7070833444595337 0.7070833444595337 0.0 0.0 0.2075626701116562 0.7924373149871826 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 2.147745132446289 0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340681433677673 0.7065932154655457 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 1.8393548727035522 0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340681433677673 0.7065932154655457 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.5700029134750366 0.18796256184577942 1.5309646129608154 0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340681433677673 0.7065932154655457 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.7932260036468506 0.3099707365036011 6.049690246582031 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.9989885091781616 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.7932260036468506 0.3099707365036011 5.42974853515625 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.9986780285835266 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +6.8614630699157715 0.3099707365036011 6.049690246582031 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.9990924000740051 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +6.8614630699157715 0.3099707365036011 5.42974853515625 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.998729944229126 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.7932260036468506 -0.30997008085250854 6.049690246582031 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.999021589756012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.7932260036468506 -0.30997008085250854 5.42974853515625 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.9986746907234192 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +6.8614630699157715 -0.30997008085250854 6.049690246582031 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.99904465675354 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +6.8614630699157715 -0.30997008085250854 5.42974853515625 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.9987503886222839 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.363054275512695 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.40381643176078796 0.596183717250824 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.291635036468506 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.5961830019950867 0.4038171172142029 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.220215797424316 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.7405309081077576 0.2594691514968872 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.148796081542969 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.854128360748291 0.14587166905403137 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.57731294631958 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.060308005660772324 0.9396920204162598 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.077376842498779 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9396908283233643 0.06030922010540962 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.077376842498779 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9505122900009155 0.04897545650601387 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.57731294631958 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0489724837243557 0.9505137801170349 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.577312469482422 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.04897333309054375 0.9505133628845215 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.077376365661621 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9505129456520081 0.04897415265440941 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.577312469482422 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.060308389365673065 0.9396916031837463 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.077376365661621 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9396907091140747 0.060309313237667084 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.434473991394043 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.25946763157844543 0.7405324578285217 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.505893707275391 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.14587025344371796 0.8541297912597656 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.505893230438232 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.15848419070243835 0.841515839099884 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.434473991394043 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.27180027961730957 0.7281997799873352 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.363054275512695 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.4109595715999603 0.5890404582023621 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.291634559631348 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.5890398621559143 0.4109601080417633 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.220215320587158 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.7281983494758606 0.2718016803264618 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.148796081542969 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.8415144681930542 0.1584855616092682 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.505893707275391 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.15848387777805328 0.8415161371231079 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.434473991394043 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.2718008756637573 0.7281991839408875 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.3630547523498535 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.4109595715999603 0.5890404582023621 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.291635513305664 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.5890389680862427 0.4109610617160797 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.220215797424316 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.7281984686851501 0.27180156111717224 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.148796081542969 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.8415152430534363 0.1584847867488861 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.505893230438232 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.145870640873909 0.854129433631897 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.434473991394043 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.2594672441482544 0.7405328750610352 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.363054275512695 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.40381601452827454 0.5961841344833374 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.291634559631348 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.5961840152740479 0.4038161337375641 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.220215320587158 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.740531861782074 0.2594682574272156 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +4.148796081542969 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.8541285395622253 0.14587156474590302 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +1.2785460948944092 0.3099713921546936 0.931412935256958 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9985507726669312 0.0 0.0 0.0 0.0 0.0 0.0 +0.6586043834686279 0.30997133255004883 0.931412935256958 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9987072944641113 0.0 0.0 0.0 0.0 0.0 0.0 +1.278545618057251 0.30997204780578613 -4.136824131011963 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5052380561828613 0.49460160732269287 0.0 0.0 0.0 0.0 +0.6586039066314697 0.30997198820114136 -4.136824131011963 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5055169463157654 0.49433404207229614 0.0 0.0 0.0 0.0 +1.2785460948944092 -0.30996936559677124 0.931412935256958 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9986318945884705 0.0 0.0 0.0 0.0 0.0 0.0 +0.6586043834686279 -0.309969425201416 0.931412935256958 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9986201524734497 0.0 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.3099687099456787 -4.136824131011963 0.7070833444595337 0.0 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.030716029927134514 0.9595479369163513 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.3099687695503235 -4.136824131011963 -0.7070833444595337 0.0 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.029979972168803215 0.9599178433418274 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997171998023987 -1.6384153366088867 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3169165253639221 0.6810469627380371 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997171998023987 -1.5669960975646973 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4572446048259735 0.5412967801094055 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997171998023987 -1.4955768585205078 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6452033519744873 0.35380837321281433 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.3099716901779175 -1.4241571426391602 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7962209582328796 0.20318622887134552 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996906757354736 -1.8526740074157715 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0494132898747921 0.9303920269012451 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996912717819214 -1.3527379035949707 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9281480312347412 0.07127709686756134 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.3099716901779175 -1.3527379035949707 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9260011911392212 0.07375487685203552 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997174978256226 -1.8526740074157715 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05173035338521004 0.9434433579444885 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.3099690079689026 -1.8526735305786133 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05172170326113701 0.9277603030204773 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.30996906757354736 -1.3527374267578125 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9260023832321167 0.0733809620141983 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716901779175 -1.8526735305786133 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04942836984992027 0.9457067251205444 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716305732727 -1.3527374267578125 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9281487464904785 0.07162673026323318 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997171998023987 -1.7098350524902344 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20962250232696533 0.787617564201355 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 0.30997174978256226 -1.781254768371582 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12419367581605911 0.8721334338188171 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716901779175 -1.7812542915344238 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12150784581899643 0.8750180602073669 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716603755951 -1.7098350524902344 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20644822716712952 0.7909489870071411 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716603755951 -1.6384153366088867 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.31374478340148926 0.6843400597572327 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716603755951 -1.566995620727539 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4550377130508423 0.5435944199562073 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716603755951 -1.4955763816833496 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6456672549247742 0.3534086346626282 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 0.3099716305732727 -1.4241571426391602 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7978616952896118 0.20158615708351135 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996906757354736 -1.781254768371582 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1215023472905159 0.8644345998764038 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996909737586975 -1.7098350524902344 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20644477009773254 0.7836710214614868 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996909737586975 -1.638415813446045 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3137417435646057 0.6793889999389648 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996909737586975 -1.5669965744018555 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4550345242023468 0.5403043031692505 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996909737586975 -1.4955768585205078 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6456661820411682 0.3513343334197998 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996912717819214 -1.4241571426391602 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7978618144989014 0.20044955611228943 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.3099690079689026 -1.7812542915344238 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12418761104345322 0.8612455129623413 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.309969037771225 -1.7098350524902344 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20961767435073853 0.7800988554954529 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.309969037771225 -1.6384153366088867 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3169129490852356 0.6759112477302551 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.309969037771225 -1.566995620727539 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.45724305510520935 0.5378694534301758 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.309969037771225 -1.4955763816833496 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6452030539512634 0.35164040327072144 0.0 0.0 0.0 0.0 0.0 +1.27854585647583 -0.30996906757354736 -1.4241571426391602 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7962204813957214 0.20199435949325562 0.0 0.0 0.0 0.0 0.0 +0.6586041450500488 -0.30996882915496826 -3.6402697563171387 -0.904507577419281 -0.3014923632144928 0.3014923632144928 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06641191989183426 0.9329474568367004 0.0 0.0 0.0 0.0 +1.27854585647583 -0.3099687695503235 -3.6402697563171387 0.904507577419281 -0.3014923632144928 0.3014923632144928 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06355410069227219 0.9358084797859192 0.0 0.0 0.0 0.0 +0.6586039662361145 0.3099719285964966 -3.6402697563171387 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.8722336292266846 0.1267542839050293 0.0 0.0 0.0 0.0 +1.278545618057251 0.30997198820114136 -3.6402697563171387 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.8683325052261353 0.13059404492378235 0.0 0.0 0.0 0.0 +0.6586042642593384 -1.547959327697754 -4.136824131011963 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9976288080215454 0.0 0.0 0.0 0.0 +1.2785459756851196 -1.5479592084884644 -4.136824131011963 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9977253079414368 0.0 0.0 0.0 0.0 +0.6586042642593384 -1.547959327697754 -3.6402699947357178 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9973106384277344 0.0 0.0 0.0 0.0 +1.2785459756851196 -1.547959327697754 -3.6402699947357178 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9972676634788513 0.0 0.0 0.0 0.0 +-0.6571227312088013 0.6571227312088013 8.111547470092773 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +-0.6571227312088013 0.6571227312088013 6.797300815582275 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +-0.6571227312088013 -0.6571227312088013 8.111547470092773 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +-0.6571227312088013 -0.6571227312088013 6.797300815582275 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 6.465208530426025 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.9843971133232117 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 1.2225744724273682 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.29340675473213196 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 6.465208530426025 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.9843971133232117 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 1.2225744724273682 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.29340675473213196 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 1.530964732170105 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340672492980957 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 1.8393549919128418 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340675473213196 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 2.147745132446289 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.29340672492980957 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 2.4561352729797363 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.2075626701116562 0.7924371957778931 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 2.7645254135131836 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.14693540334701538 0.8530644774436951 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 3.072915554046631 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.10415933281183243 0.8958405256271362 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 3.3813059329986572 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.07403755933046341 0.9259622693061829 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 3.6896963119506836 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.05291063338518143 0.9470892548561096 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 3.998086452484131 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.026423681527376175 0.9617879986763 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 4.306476593017578 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.00631081685423851 0.971844494342804 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 4.614866733551025 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9784803986549377 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 4.923256874084473 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9825018048286438 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 5.23164701461792 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843973517417908 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 5.540037155151367 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.984397292137146 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 5.848427772521973 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843971729278564 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 -0.18796253204345703 6.156818389892578 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.9843971133232117 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 6.156818389892578 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843971729278564 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 5.848428249359131 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843972325325012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 5.540038108825684 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.984397292137146 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 5.231647968292236 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9843973517417908 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 4.923257827758789 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9825018644332886 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 4.614867687225342 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.9784803986549377 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 4.3064775466918945 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.006310764700174332 0.9718445539474487 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 3.998087167739868 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.026423631235957146 0.9617881178855896 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 3.689696788787842 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.05291060730814934 0.9470892548561096 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 3.3813064098358154 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.07403752952814102 0.9259623885154724 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 3.072916030883789 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.10415928065776825 0.895840585231781 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 2.764525890350342 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.1469353437423706 0.8530645370483398 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 2.4561355113983154 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.2075626403093338 0.7924371957778931 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 2.147745132446289 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340678453445435 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 1.8393548727035522 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340678453445435 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.5700029134750366 0.18796256184577942 1.5309646129608154 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.29340678453445435 0.7065930962562561 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.7932260036468506 0.3099707365036011 6.049690246582031 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.9989885091781616 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.7932260036468506 0.3099707365036011 5.42974853515625 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.9986780285835266 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-6.8614630699157715 0.3099707365036011 6.049690246582031 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.9990924000740051 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-6.8614630699157715 0.3099707365036011 5.42974853515625 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.998729944229126 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.7932260036468506 -0.30997008085250854 6.049690246582031 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.999021589756012 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.7932260036468506 -0.30997008085250854 5.42974853515625 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.9986746907234192 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-6.8614630699157715 -0.30997008085250854 6.049690246582031 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.99904465675354 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-6.8614630699157715 -0.30997008085250854 5.42974853515625 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.9987503886222839 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.363054275512695 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.40381643176078796 0.596183717250824 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.291635036468506 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.5961830019950867 0.4038171172142029 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.220215797424316 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.7405309081077576 0.2594691514968872 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.148796081542969 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.854128360748291 0.14587166905403137 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.57731294631958 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.06030800938606262 0.9396920204162598 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.077376842498779 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.9396908283233643 0.06030922010540962 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.077376842498779 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.9505122900009155 0.04897546395659447 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.57731294631958 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0489724837243557 0.9505137801170349 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.577312469482422 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.04897333309054375 0.9505133628845215 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.077376365661621 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.9505129456520081 0.048974160104990005 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.577312469482422 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.060308393090963364 0.9396916031837463 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.077376365661621 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.9396907091140747 0.060309313237667084 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.434473991394043 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.25946763157844543 0.7405324578285217 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.505893707275391 0.3099707365036011 6.049690246582031 0.0 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.14587026834487915 0.8541297912597656 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.505893230438232 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.15848419070243835 0.841515839099884 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.434473991394043 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.27180027961730957 0.7281997799873352 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.363054275512695 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.4109595715999603 0.5890404582023621 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.291634559631348 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.5890399217605591 0.4109601080417633 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.220215320587158 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.7281983494758606 0.2718016803264618 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.148796081542969 0.3099707365036011 5.42974853515625 0.0 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.8415144681930542 0.1584855616092682 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.505893707275391 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.15848389267921448 0.8415161371231079 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.434473991394043 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.2718009054660797 0.7281991839408875 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.3630547523498535 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.4109596014022827 0.5890404582023621 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.291635513305664 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.5890389680862427 0.4109610617160797 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.220215797424316 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.7281984686851501 0.27180159091949463 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.148796081542969 -0.30997008085250854 5.42974853515625 0.0 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.8415152430534363 0.1584848016500473 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.505893230438232 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.145870640873909 0.854129433631897 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.434473991394043 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.2594672441482544 0.7405328750610352 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.363054275512695 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.40381601452827454 0.5961841344833374 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.291634559631348 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.5961840152740479 0.4038161337375641 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.220215320587158 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.740531861782074 0.2594682574272156 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-4.148796081542969 -0.30997008085250854 6.049690246582031 0.0 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.8541285395622253 0.14587156474590302 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +-1.2785460948944092 0.3099713921546936 0.931412935256958 -0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9985507726669312 0.0 0.0 +-0.6586043834686279 0.30997133255004883 0.931412935256958 0.5773491859436035 0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9987072944641113 0.0 0.0 +-1.278545618057251 0.30997204780578613 -4.136824131011963 -0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5052380561828613 0.49460160732269287 +-0.6586039066314697 0.30997198820114136 -4.136824131011963 0.5773491859436035 0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5055169463157654 0.49433404207229614 +-1.2785460948944092 -0.30996936559677124 0.931412935256958 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9986318945884705 0.0 0.0 +-0.6586043834686279 -0.309969425201416 0.931412935256958 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9986201524734497 0.0 0.0 +-1.27854585647583 -0.3099687099456787 -4.136824131011963 -0.7070833444595337 0.0 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.030716029927134514 0.9595479965209961 +-0.6586041450500488 -0.3099687695503235 -4.136824131011963 0.7070833444595337 0.0 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.029979972168803215 0.9599178433418274 +-1.27854585647583 0.30997171998023987 -1.6384153366088867 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3169165253639221 0.6810469627380371 0.0 +-1.27854585647583 0.30997171998023987 -1.5669960975646973 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4572446048259735 0.5412967801094055 0.0 +-1.27854585647583 0.30997171998023987 -1.4955768585205078 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6452033519744873 0.35380837321281433 0.0 +-1.27854585647583 0.3099716901779175 -1.4241571426391602 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7962209582328796 0.20318622887134552 0.0 +-0.6586041450500488 -0.30996906757354736 -1.8526740074157715 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0494132898747921 0.9303920269012451 0.0 +-0.6586041450500488 -0.30996912717819214 -1.3527379035949707 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9281480312347412 0.07127708941698074 0.0 +-1.27854585647583 0.3099716901779175 -1.3527379035949707 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9260011911392212 0.07375486940145493 0.0 +-1.27854585647583 0.30997174978256226 -1.8526740074157715 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.051730357110500336 0.9434433579444885 0.0 +-1.27854585647583 -0.3099690079689026 -1.8526735305786133 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.05172170698642731 0.9277602434158325 0.0 +-1.27854585647583 -0.30996906757354736 -1.3527374267578125 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9260023832321167 0.0733809545636177 0.0 +-0.6586041450500488 0.3099716901779175 -1.8526735305786133 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.04942836984992027 0.9457067251205444 0.0 +-0.6586041450500488 0.3099716305732727 -1.3527374267578125 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9281487464904785 0.07162673026323318 0.0 +-1.27854585647583 0.30997171998023987 -1.7098350524902344 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20962250232696533 0.787617564201355 0.0 +-1.27854585647583 0.30997174978256226 -1.781254768371582 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12419367581605911 0.8721334338188171 0.0 +-0.6586041450500488 0.3099716901779175 -1.7812542915344238 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12150784581899643 0.8750180602073669 0.0 +-0.6586041450500488 0.3099716603755951 -1.7098350524902344 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20644822716712952 0.7909489870071411 0.0 +-0.6586041450500488 0.3099716603755951 -1.6384153366088867 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.31374478340148926 0.6843400597572327 0.0 +-0.6586041450500488 0.3099716603755951 -1.566995620727539 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4550377130508423 0.5435944199562073 0.0 +-0.6586041450500488 0.3099716603755951 -1.4955763816833496 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6456672549247742 0.3534086048603058 0.0 +-0.6586041450500488 0.3099716305732727 -1.4241571426391602 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7978616952896118 0.20158615708351135 0.0 +-0.6586041450500488 -0.30996906757354736 -1.781254768371582 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.1215023472905159 0.8644345998764038 0.0 +-0.6586041450500488 -0.30996909737586975 -1.7098350524902344 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20644477009773254 0.7836710214614868 0.0 +-0.6586041450500488 -0.30996909737586975 -1.638415813446045 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3137417435646057 0.6793889999389648 0.0 +-0.6586041450500488 -0.30996909737586975 -1.5669965744018555 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.4550345242023468 0.5403043031692505 0.0 +-0.6586041450500488 -0.30996909737586975 -1.4955768585205078 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6456661820411682 0.3513343334197998 0.0 +-0.6586041450500488 -0.30996912717819214 -1.4241571426391602 0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7978618144989014 0.20044955611228943 0.0 +-1.27854585647583 -0.3099690079689026 -1.7812542915344238 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.12418761104345322 0.8612455129623413 0.0 +-1.27854585647583 -0.309969037771225 -1.7098350524902344 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.20961767435073853 0.7800988554954529 0.0 +-1.27854585647583 -0.309969037771225 -1.6384153366088867 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.3169129490852356 0.6759112477302551 0.0 +-1.27854585647583 -0.309969037771225 -1.566995620727539 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.45724302530288696 0.5378695130348206 0.0 +-1.27854585647583 -0.309969037771225 -1.4955763816833496 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.6452030539512634 0.35164040327072144 0.0 +-1.27854585647583 -0.30996906757354736 -1.4241571426391602 -0.7070833444595337 -0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.7962204813957214 0.20199435949325562 0.0 +-0.6586041450500488 -0.30996882915496826 -3.6402697563171387 0.904507577419281 -0.3014923632144928 0.3014923632144928 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06641191989183426 0.9329474568367004 +-1.27854585647583 -0.3099687695503235 -3.6402697563171387 -0.904507577419281 -0.3014923632144928 0.3014923632144928 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.06355410069227219 0.9358084797859192 +-0.6586039662361145 0.3099719285964966 -3.6402697563171387 0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.8722336292266846 0.1267542839050293 +-1.278545618057251 0.30997198820114136 -3.6402697563171387 -0.7070833444595337 0.7070833444595337 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.8683325052261353 0.13059404492378235 +-0.6586042642593384 -1.547959327697754 -4.136824131011963 0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9976288080215454 +-1.2785459756851196 -1.5479592084884644 -4.136824131011963 -0.5773491859436035 -0.5773491859436035 -0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9977253079414368 +-0.6586042642593384 -1.547959327697754 -3.6402699947357178 0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9973106384277344 +-1.2785459756851196 -1.547959327697754 -3.6402699947357178 -0.5773491859436035 -0.5773491859436035 0.5773491859436035 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.9972676634788513 +faces: +0 0.640097439289093 0.9651474952697754 0.0 1.0 0.0 0.0 0.0 1.0 +3 0.5293235778808594 0.8543734550476074 0.0 1.0 0.0 0.0 0.0 1.0 +1 0.640097439289093 0.8543734550476074 0.0 1.0 0.0 0.0 0.0 1.0 +3 0.7508713603019714 0.8543734550476074 1.0 0.0 0.0 -0.0 0.0 1.0 +130 0.6400974988937378 0.9651474952697754 1.0 0.0 0.0 -0.0 0.0 1.0 +131 0.6400974988937378 0.8543734550476074 1.0 0.0 0.0 -0.0 0.0 1.0 +131 0.11077386140823364 0.9798465967178345 1.0 0.0 0.0 0.0 -1.0 0.0 +1 0.22154772281646729 0.8690727353096008 1.0 0.0 0.0 0.0 -1.0 0.0 +3 0.22154772281646729 0.9798465967178345 1.0 0.0 0.0 0.0 -1.0 0.0 +129 0.8616451621055603 0.8543734550476074 -1.0 0.0 0.0 0.0 -0.0 1.0 +0 0.7508713006973267 0.9651474952697754 -1.0 0.0 0.0 0.0 -0.0 1.0 +1 0.7508713006973267 0.8543734550476074 -1.0 0.0 0.0 0.0 -0.0 1.0 +4 0.926461398601532 0.44188594818115234 0.0 1.0 0.0 0.0 0.0 1.0 +23 0.8947757482528687 0.41589272022247314 0.0 1.0 0.0 0.0 0.0 1.0 +24 0.926461398601532 0.41589272022247314 0.0 1.0 0.0 0.0 0.0 1.0 +23 0.2646617889404297 0.41589272022247314 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +134 0.0 0.4418860673904419 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +151 0.0 0.41589272022247314 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +135 0.9264613389968872 0.0 0.0 1.0 0.0 1.0 -0.0 0.0 +5 0.9581469297409058 0.2646617889404297 0.0 1.0 0.0 1.0 -0.0 0.0 +7 0.9264613389968872 0.2646617889404297 0.0 1.0 0.0 1.0 -0.0 0.0 +152 0.5293235778808594 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +4 0.2646617889404297 0.4418860673904419 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +24 0.2646617889404297 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +133 0.5293235778808594 0.0 -1.0 0.0 -4.172772207766684e-07 -4.1727719235495897e-07 0.0 0.9999999403953552 +39 0.2646617889404297 0.0259932279586792 -1.0 0.0 -2.390778206518007e-07 -2.390777922300913e-07 0.0 0.9999999403953552 +5 0.2646617889404297 0.0 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +167 0.5293235778808594 0.02599334716796875 -1.0 0.0 -2.3654229153180495e-07 -2.3654227732095023e-07 0.0 0.9999999403953552 +38 0.2646617889404297 0.05198657512664795 -1.0 0.0 -2.111740826649111e-07 -2.111740684540564e-07 0.0 0.9999999403953552 +39 0.2646617889404297 0.0259932279586792 -1.0 0.0 -2.390778206518007e-07 -2.390777922300913e-07 0.0 0.9999999403953552 +166 0.5293235778808594 0.05198657512664795 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +37 0.2646617889404297 0.0779799222946167 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +38 0.2646617889404297 0.05198657512664795 -1.0 0.0 -2.111740826649111e-07 -2.111740684540564e-07 0.0 0.9999999403953552 +165 0.5293235778808594 0.0779799222946167 -0.9999999403953552 0.0 -4.279766017134534e-07 -4.279766017134534e-07 0.0 0.9999999403953552 +36 0.2646617889404297 0.1039731502532959 -1.0 0.0 -2.394334899236128e-07 -2.394334899236128e-07 0.0 1.0 +37 0.2646617889404297 0.0779799222946167 -1.0 0.0 0.0 0.0 -0.0 1.0 +164 0.5293235778808594 0.10397326946258545 -1.0 0.0 -2.422476086394454e-07 -2.422476086394454e-07 0.0 1.0 +35 0.2646617889404297 0.12996649742126465 -0.9999999403953552 0.0 -4.2234839270349767e-07 -4.2234839270349767e-07 0.0 0.9999999403953552 +36 0.2646617889404297 0.1039731502532959 -1.0 0.0 -2.394334899236128e-07 -2.394334899236128e-07 0.0 1.0 +163 0.5293235778808594 0.12996649742126465 -1.0 0.0 -4.172772207766684e-07 -4.1727719235495897e-07 0.0 0.9999999403953552 +34 0.2646617889404297 0.15595972537994385 -1.0 0.0 -2.773514751197581e-08 -2.773514573561897e-08 0.0 0.9999999403953552 +35 0.2646617889404297 0.12996649742126465 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +162 0.5293235778808594 0.1559598445892334 -0.9999999403953552 0.0 -2.8072212998608848e-08 -2.8072212998608848e-08 0.0 0.9999999403953552 +33 0.2646617889404297 0.1819530725479126 -1.0 0.0 -2.111741679300394e-07 -2.111741679300394e-07 0.0 1.0 +34 0.2646617889404297 0.15595972537994385 -1.0 0.0 -4.50420600373036e-07 -4.50420600373036e-07 0.0 1.0 +161 0.5293235778808594 0.1819530725479126 -1.0 0.0 0.0 0.0 -0.0 1.0 +32 0.2646617889404297 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +33 0.2646617889404297 0.1819530725479126 -1.0 0.0 -2.111741679300394e-07 -2.111741679300394e-07 0.0 1.0 +160 0.5293235778808594 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +31 0.2646617889404297 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +32 0.2646617889404297 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +159 0.5293235778808594 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +30 0.2646617889404297 0.2599329948425293 -0.9999999403953552 0.0 0.0 0.0 -0.0 0.9999999403953552 +31 0.2646617889404297 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +158 0.5293235778808594 0.2599329948425293 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +29 0.2646617889404297 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +30 0.2646617889404297 0.2599329948425293 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +157 0.5293235778808594 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +28 0.2646617889404297 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +29 0.2646617889404297 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +156 0.5293235778808594 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +27 0.2646617889404297 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +28 0.2646617889404297 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +155 0.5293235778808594 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +26 0.2646617889404297 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +27 0.2646617889404297 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +154 0.5293235778808594 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +25 0.2646617889404297 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +26 0.2646617889404297 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +39 0.9264614582061768 0.02599334716796875 0.0 1.0 -1.3869561144019826e-07 -0.0 1.3869561144019826e-07 1.0 +7 0.8947758078575134 0.0 0.0 1.0 -1.784135861271352e-07 -0.0 1.784135861271352e-07 1.0 +5 0.9264614582061768 0.0 0.0 1.0 0.0 0.0 0.0 1.0 +38 0.926461398601532 0.05198657512664795 -1.4396411529560282e-07 1.0 -2.8593009915311995e-07 -4.1163673489795494e-14 2.8593009915311995e-07 1.0 +8 0.8947758078575134 0.02599334716796875 -1.4396411529560282e-07 1.0 -2.8593009915311995e-07 -4.1163673489795494e-14 2.8593009915311995e-07 1.0 +39 0.9264614582061768 0.02599334716796875 -1.4396411529560282e-07 1.0 -2.859301275748294e-07 -4.116367687792728e-14 2.859301275748294e-07 1.0 +37 0.926461398601532 0.0779799222946167 -1.439642716150047e-07 1.0 -3.8123835111036897e-07 -5.488470260412749e-14 3.8123835111036897e-07 1.0 +9 0.8947758078575134 0.05198657512664795 -1.439642716150047e-07 1.0 -3.8123832268865954e-07 -5.4884695827863914e-14 3.8123832268865954e-07 1.0 +38 0.926461398601532 0.05198657512664795 -1.439642858258594e-07 1.0 -3.812383795320784e-07 -5.488470599225928e-14 3.812383795320784e-07 1.0 +37 0.926461398601532 0.0779799222946167 0.0 1.0 0.0 0.0 0.0 1.0 +11 0.8947758078575134 0.1039731502532959 0.0 1.0 0.0 0.0 0.0 1.0 +10 0.8947758078575134 0.0779799222946167 0.0 1.0 0.0 0.0 0.0 1.0 +36 0.926461398601532 0.1039731502532959 5.141351380189008e-07 1.0 6.342182814478292e-07 -3.260739117952327e-13 -6.342182814478292e-07 1.0 +12 0.8947758078575134 0.12996649742126465 5.141351380189008e-07 1.0 6.342182814478292e-07 -3.260739117952327e-13 -6.342182814478292e-07 1.0 +11 0.8947758078575134 0.1039731502532959 5.141351380189008e-07 1.0 6.342182814478292e-07 -3.260739117952327e-13 -6.342182814478292e-07 1.0 +35 0.926461398601532 0.12996649742126465 0.0 1.0 1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +13 0.8947758078575134 0.15595972537994385 0.0 1.0 1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +12 0.8947758078575134 0.12996649742126465 0.0 1.0 1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +34 0.926461398601532 0.1559598445892334 0.0 1.0 -2.493811280146474e-06 -0.0 2.493811280146474e-06 1.0 +14 0.8947758078575134 0.1819530725479126 0.0 1.0 -2.493811280146474e-06 -0.0 2.493811280146474e-06 1.0 +13 0.8947758078575134 0.15595972537994385 0.0 1.0 -2.493811280146474e-06 -0.0 2.493811280146474e-06 1.0 +33 0.926461398601532 0.1819530725479126 0.0 1.0 1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +15 0.8947758078575134 0.2079463005065918 0.0 1.0 1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +14 0.8947758078575134 0.1819530725479126 0.0 1.0 1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +32 0.926461398601532 0.20794641971588135 0.0 1.0 -2.4938083242886933e-06 -0.0 2.4938083242886933e-06 1.0 +16 0.8947758078575134 0.23393964767456055 0.0 1.0 -2.4938083242886933e-06 -0.0 2.4938083242886933e-06 1.0 +15 0.8947758078575134 0.2079463005065918 0.0 1.0 -2.4938083242886933e-06 -0.0 2.4938083242886933e-06 1.0 +31 0.926461398601532 0.23393964767456055 0.0 1.0 1.9026549580303254e-06 0.0 -1.9026549580303254e-06 1.0 +17 0.8947758078575134 0.2599329948425293 0.0 1.0 1.9026548443434876e-06 0.0 -1.9026548443434876e-06 1.0 +16 0.8947758078575134 0.23393964767456055 0.0 1.0 1.90265473065665e-06 0.0 -1.90265473065665e-06 1.0 +30 0.926461398601532 0.2599329948425293 0.0 1.0 2.536873807912343e-06 0.0 -2.536873807912343e-06 1.0 +18 0.8947758078575134 0.2859262228012085 0.0 1.0 2.5368735805386677e-06 0.0 -2.5368735805386677e-06 1.0 +17 0.8947758078575134 0.2599329948425293 0.0 1.0 2.5368735805386677e-06 0.0 -2.5368735805386677e-06 1.0 +29 0.926461398601532 0.28592634201049805 0.0 1.0 -1.2253891554792062e-06 -0.0 1.2253891554792062e-06 1.0 +19 0.8947758078575134 0.3119194507598877 0.0 1.0 -1.2253890417923685e-06 -0.0 1.2253890417923685e-06 1.0 +18 0.8947758078575134 0.2859262228012085 0.0 1.0 -1.2253890417923685e-06 -0.0 1.2253890417923685e-06 1.0 +28 0.926461398601532 0.31191956996917725 0.0 1.0 -1.2253716477061971e-06 -0.0 1.2253716477061971e-06 1.0 +20 0.8947758078575134 0.33791279792785645 0.0 1.0 -1.2253716477061971e-06 -0.0 1.2253716477061971e-06 1.0 +19 0.8947758078575134 0.3119194507598877 0.0 1.0 -1.2253716477061971e-06 -0.0 1.2253716477061971e-06 1.0 +27 0.926461398601532 0.33791279792785645 0.0 1.0 2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +21 0.8947757482528687 0.3639061450958252 0.0 1.0 2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +20 0.8947758078575134 0.33791279792785645 0.0 1.0 2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +26 0.926461398601532 0.3639061450958252 0.0 1.0 2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +22 0.8947757482528687 0.38989949226379395 0.0 1.0 2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +21 0.8947757482528687 0.3639061450958252 0.0 1.0 2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +25 0.926461398601532 0.38989949226379395 0.0 0.9999999403953552 1.2684367902693339e-06 0.0 -1.2684366765824961e-06 0.9999998807907104 +23 0.8947757482528687 0.41589272022247314 0.0 1.0 1.2684367902693339e-06 0.0 -1.2684366765824961e-06 0.9999999403953552 +22 0.8947757482528687 0.38989949226379395 0.0 1.0 1.2684366765824961e-06 0.0 -1.2684365628956584e-06 0.9999999403953552 +56 0.316914826631546 0.6344103813171387 7.705211828579195e-07 1.0 0.0 -1.0 7.705211828579195e-07 0.0 +61 0.3691678047180176 0.6404299736022949 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +74 0.316914826631546 0.6404299736022949 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +42 0.8947755694389343 0.8229203224182129 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +47 0.8425226211547852 0.7706670761108398 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +43 0.8947755694389343 0.7706670761108398 0.0 1.0 0.0 0.0 0.0 1.0 +55 0.20901203155517578 0.6344103813171387 -7.691646146668063e-07 8.41849470134548e-08 -1.0 -1.0 -6.475208417415848e-14 7.691646146668063e-07 +43 0.26126527786254883 0.44188594818115234 -7.691645578233874e-07 8.41849470134548e-08 -1.0 -1.0 -6.47520773978949e-14 7.691645578233874e-07 +58 0.26126527786254883 0.6344103813171387 -7.691645578233874e-07 8.41849470134548e-08 -1.0 -1.0 -6.47520773978949e-14 7.691645578233874e-07 +57 0.05225324630737305 0.6344103813171387 7.691645009799686e-07 -8.418497543516423e-08 -1.0 1.0 6.475209772668564e-14 7.691645009799686e-07 +45 0.1045064926147461 0.4418860673904419 7.691645009799686e-07 -8.418497543516423e-08 -1.0 1.0 6.475209772668564e-14 7.691645009799686e-07 +53 0.1045064926147461 0.6344103813171387 7.691645009799686e-07 -8.418498254059159e-08 -1.0 1.0 6.475209772668564e-14 7.691645009799686e-07 +40 0.3691678047180176 0.869072437286377 1.6851643636073277e-07 1.0 0.0 -1.0 1.6851643636073277e-07 0.0 +57 0.316914826631546 0.6765484809875488 7.97253221662686e-07 1.0 0.0 -1.0 7.97253221662686e-07 0.0 +54 0.3691678047180176 0.6765484809875488 5.272975158732152e-07 1.0 0.0 -1.0 5.272975158732152e-07 0.0 +44 0.4890805780887604 0.9213261604309082 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +41 0.4368276000022888 0.8690729141235352 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +45 0.4890805780887604 0.8690729141235352 0.0 -1.0 0.0 0.0 0.0 1.0 +55 0.3691678047180176 0.6344103813171387 7.042787046884769e-07 1.0 0.0 -1.0 7.042787046884769e-07 0.0 +46 0.316914826631546 0.44188594818115234 1.29773908952302e-07 1.0 0.0 -1.0 1.29773908952302e-07 0.0 +42 0.3691678047180176 0.44188594818115234 0.0 1.0 0.0 -1.0 0.0 0.0 +52 0.3691677749156952 0.6765483617782593 -7.042787046884769e-07 1.0 0.0 1.0 7.042787046884769e-07 0.0 +43 0.42142075300216675 0.8690727949142456 -1.29773908952302e-07 1.0 0.0 1.0 1.29773908952302e-07 0.0 +47 0.3691677749156952 0.8690727949142456 0.0 1.0 0.0 1.0 -0.0 0.0 +45 0.3691677749156952 0.4418860673904419 2.52774214004603e-07 1.0 0.0 1.0 -2.52774214004603e-07 0.0 +59 0.42142075300216675 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 1.0 -1.3791679975838633e-06 0.0 +53 0.3691677749156952 0.6344103813171387 8.043285788517096e-07 1.0 0.0 1.0 -8.043285788517096e-07 0.0 +40 0.20901203155517578 0.869072437286377 0.0 0.0 -1.0 -1.0 0.0 0.0 +59 0.26126527786254883 0.6765484809875488 0.0 0.0 -1.0 -1.0 0.0 0.0 +41 0.26126527786254883 0.869072437286377 0.0 0.0 -1.0 -1.0 0.0 0.0 +67 0.26126527786254883 0.6705284118652344 0.0 0.0 -1.0 -1.0 0.0 0.0 +54 0.20901203155517578 0.6765484809875488 0.0 0.0 -0.9999999403953552 -0.9999999403953552 0.0 0.0 +51 0.20901203155517578 0.6705284118652344 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +67 0.42142075300216675 0.6404300928115845 7.012266109995835e-07 1.0 0.0 1.0 -7.012266109995835e-07 0.0 +53 0.3691677749156952 0.6344103813171387 8.043285788517096e-07 1.0 0.0 1.0 -8.043285788517096e-07 0.0 +59 0.42142075300216675 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 1.0 -1.3791679975838633e-06 0.0 +68 0.1045064926147461 0.6705288887023926 -3.7935171803837875e-06 8.413927332640014e-08 -0.9999999403953552 0.9999999403953552 3.19183779884033e-13 -3.7935171803837875e-06 +56 0.05225324630737305 0.6765484809875488 -3.7935171803837875e-06 8.41392804318275e-08 -1.0 1.0 3.19183779884033e-13 -3.7935171803837875e-06 +74 0.05225324630737305 0.6705286502838135 -3.7935171803837875e-06 8.413927332640014e-08 -1.0 1.0 3.19183779884033e-13 -3.7935171803837875e-06 +79 0.316914826631546 0.6705284118652344 3.542138244938542e-07 1.0 0.0 -1.0 3.542138244938542e-07 0.0 +54 0.3691678047180176 0.6765484809875488 5.272975158732152e-07 1.0 0.0 -1.0 5.272975158732152e-07 0.0 +57 0.316914826631546 0.6765484809875488 7.97253221662686e-07 1.0 0.0 -1.0 7.97253221662686e-07 0.0 +46 0.05225324630737305 0.869072675704956 0.0 0.0 -1.0 1.0 0.0 0.0 +52 0.1045064926147461 0.6765484809875488 0.0 0.0 -1.0 1.0 0.0 0.0 +47 0.1045064926147461 0.869072675704956 0.0 0.0 -1.0 1.0 0.0 0.0 +74 0.316914826631546 0.6404299736022949 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +60 0.3691678047180176 0.6464495658874512 3.5650114682539424e-07 1.0 0.0 -1.0 3.5650114682539424e-07 0.0 +75 0.316914826631546 0.6464495658874512 0.0 1.0 0.0 -1.0 0.0 0.0 +60 0.3691678047180176 0.6464495658874512 3.5650114682539424e-07 1.0 0.0 -1.0 3.5650114682539424e-07 0.0 +76 0.316914826631546 0.6524691581726074 3.5421388133727305e-07 1.0 0.0 -1.0 3.5421388133727305e-07 0.0 +75 0.316914826631546 0.6464495658874512 0.0 1.0 0.0 -1.0 0.0 0.0 +76 0.316914826631546 0.6524691581726074 3.5421388133727305e-07 1.0 0.0 -1.0 3.5421388133727305e-07 0.0 +49 0.3691678047180176 0.6584892272949219 4.1248435422858165e-07 1.0 0.0 -1.0 4.1248435422858165e-07 0.0 +77 0.316914826631546 0.6584892272949219 7.680537237320095e-07 1.0 0.0 -1.0 7.680537237320095e-07 0.0 +77 0.316914826631546 0.6584892272949219 7.680537237320095e-07 1.0 0.0 -1.0 7.680537237320095e-07 0.0 +50 0.3691678047180176 0.6645088195800781 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +78 0.316914826631546 0.6645088195800781 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +78 0.316914826631546 0.6645088195800781 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +51 0.3691678047180176 0.6705284118652344 3.565011184036848e-07 1.0 0.0 -1.0 3.565011184036848e-07 0.0 +79 0.316914826631546 0.6705284118652344 3.542138244938542e-07 1.0 0.0 -1.0 3.542138244938542e-07 0.0 +53 0.1045064926147461 0.6344103813171387 5.6163734996061976e-08 0.0 -1.0 1.0 0.0 5.6163734996061976e-08 +79 0.05225324630737305 0.6404300928115845 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +57 0.05225324630737305 0.6344103813171387 7.691645009799686e-07 0.0 -1.0 1.0 0.0 7.691645009799686e-07 +73 0.1045064926147461 0.6404300928115845 0.0 0.0 -1.0 1.0 0.0 0.0 +78 0.05225324630737305 0.6464498043060303 0.0 0.0 -0.9999999403953552 0.9999999403953552 0.0 0.0 +79 0.05225324630737305 0.6404300928115845 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +72 0.1045064926147461 0.6464498043060303 7.691645009799686e-07 8.413836383169837e-08 -0.9999999403953552 0.9999999403953552 -6.471625129235783e-14 7.691645009799686e-07 +77 0.05225324630737305 0.6524696350097656 7.691645578233874e-07 8.413837093712573e-08 -1.0 1.0 -6.471625129235783e-14 7.691645578233874e-07 +78 0.05225324630737305 0.6464498043060303 7.691645009799686e-07 8.413837093712573e-08 -1.0 1.0 -6.471625129235783e-14 7.691645009799686e-07 +71 0.1045064926147461 0.6524696350097656 1.5383290019599372e-06 0.0 -1.0 1.0 0.0 1.5383290019599372e-06 +76 0.05225324630737305 0.6584892272949219 1.5383291156467749e-06 0.0 -1.0 1.0 0.0 1.5383291156467749e-06 +77 0.05225324630737305 0.6524696350097656 1.5383290019599372e-06 0.0 -1.0 1.0 0.0 1.5383290019599372e-06 +70 0.1045064926147461 0.6584892272949219 5.6163734996061976e-08 0.0 -1.0 1.0 0.0 5.6163734996061976e-08 +75 0.05225324630737305 0.6645090579986572 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +76 0.05225324630737305 0.6584892272949219 7.691645009799686e-07 0.0 -1.0 1.0 0.0 7.691645009799686e-07 +69 0.1045064926147461 0.6645090579986572 0.0 0.0 -1.0 1.0 0.0 0.0 +74 0.05225324630737305 0.6705286502838135 0.0 0.0 -0.9999999403953552 0.9999999403953552 0.0 0.0 +75 0.05225324630737305 0.6645090579986572 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +58 0.42142075300216675 0.6765483617782593 -7.705211260145006e-07 1.0 0.0 1.0 7.705211260145006e-07 0.0 +68 0.3691677749156952 0.670528769493103 -7.692725034758041e-07 1.0 0.0 1.0 7.692725034758041e-07 0.0 +62 0.42142075300216675 0.670528769493103 -4.1412678797314584e-07 0.9999999403953552 0.0 0.9999999403953552 4.1412678797314584e-07 0.0 +62 0.42142075300216675 0.670528769493103 -4.1412678797314584e-07 0.9999999403953552 0.0 0.9999999403953552 4.1412678797314584e-07 0.0 +69 0.3691677749156952 0.6645089387893677 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +63 0.42142075300216675 0.6645089387893677 -3.5424190514277143e-07 1.0 0.0 1.0 3.5424190514277143e-07 0.0 +63 0.42142075300216675 0.6645089387893677 -3.5424190514277143e-07 1.0 0.0 1.0 3.5424190514277143e-07 0.0 +70 0.3691677749156952 0.6584893465042114 -4.124865427002078e-07 1.0 0.0 1.0 4.124865427002078e-07 0.0 +64 0.42142075300216675 0.6584893465042114 -1.122297817346407e-06 1.0 0.0 1.0 1.122297817346407e-06 0.0 +64 0.42142075300216675 0.6584893465042114 -1.122297817346407e-06 1.0 0.0 1.0 1.122297817346407e-06 0.0 +71 0.3691677749156952 0.6524695158004761 -1.1817567155958386e-06 0.9999999403953552 0.0 0.9999999403953552 1.1817567155958386e-06 0.0 +65 0.42142075300216675 0.6524695158004761 -1.1785585911638918e-06 0.9999999403953552 0.0 0.9999999403953552 1.1785585911638918e-06 0.0 +65 0.42142075300216675 0.6524695158004761 -1.1785585911638918e-06 0.9999999403953552 0.0 0.9999999403953552 1.1785585911638918e-06 0.0 +72 0.3691677749156952 0.6464498043060303 -1.1254884384470643e-06 1.0 0.0 1.0 1.1254884384470643e-06 0.0 +66 0.42142075300216675 0.6464498043060303 -4.102198261080048e-07 0.9999999403953552 0.0 0.9999999403953552 4.102198261080048e-07 0.0 +66 0.42142075300216675 0.6464498043060303 -4.102198261080048e-07 0.9999999403953552 0.0 0.9999999403953552 4.102198261080048e-07 0.0 +73 0.3691677749156952 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +67 0.42142075300216675 0.6404300928115845 7.012266109995835e-07 1.0 0.0 1.0 -7.012266109995835e-07 0.0 +58 0.26126527786254883 0.6344103813171387 -7.691645009799686e-07 -8.413836383169837e-08 -0.9999999403953552 -0.9999999403953552 6.471625129235783e-14 7.691645009799686e-07 +61 0.20901203155517578 0.6404299736022949 -7.691645578233874e-07 -8.413837093712573e-08 -1.0 -1.0 6.471625129235783e-14 7.691645578233874e-07 +55 0.20901203155517578 0.6344103813171387 -7.691645009799686e-07 -8.413837093712573e-08 -1.0 -1.0 6.471625129235783e-14 7.691645009799686e-07 +62 0.26126527786254883 0.6404299736022949 -5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 5.6163734996061976e-08 +60 0.20901203155517578 0.6464495658874512 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +61 0.20901203155517578 0.6404299736022949 -7.691645009799686e-07 0.0 -1.0 -1.0 0.0 7.691645009799686e-07 +63 0.26126527786254883 0.6464495658874512 0.0 0.0 -1.0 -1.0 0.0 0.0 +48 0.20901203155517578 0.6524691581726074 0.0 0.0 -1.0 -1.0 0.0 0.0 +60 0.20901203155517578 0.6464495658874512 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +64 0.26126527786254883 0.6524691581726074 0.0 0.0 -1.0 -1.0 0.0 0.0 +49 0.20901203155517578 0.6584892272949219 0.0 0.0 -0.9999999403953552 -0.9999999403953552 0.0 0.0 +48 0.20901203155517578 0.6524691581726074 0.0 0.0 -1.0 -1.0 0.0 0.0 +65 0.26126527786254883 0.6584892272949219 -7.691645009799686e-07 -8.413927332640014e-08 -0.9999999403953552 -0.9999999403953552 6.47169424712428e-14 7.691645009799686e-07 +50 0.20901203155517578 0.6645088195800781 -7.691645578233874e-07 -8.41392804318275e-08 -1.0 -1.0 6.471694924750637e-14 7.691645578233874e-07 +49 0.20901203155517578 0.6584892272949219 -7.691645009799686e-07 -8.413927332640014e-08 -1.0 -1.0 6.47169424712428e-14 7.691645009799686e-07 +66 0.26126527786254883 0.6645088195800781 -5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 5.6163734996061976e-08 +51 0.20901203155517578 0.6705284118652344 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +50 0.20901203155517578 0.6645088195800781 -7.691645009799686e-07 0.0 -1.0 -1.0 0.0 7.691645009799686e-07 +95 0.6859229803085327 0.19252419471740723 0.0 1.0 -7.691656946917647e-07 -0.0 7.691656946917647e-07 1.0 +114 0.6336699724197388 0.19854402542114258 0.0 1.0 -7.691656946917647e-07 -0.0 7.691656946917647e-07 1.0 +96 0.6336699724197388 0.19252419471740723 0.0 1.0 -7.691656946917647e-07 -0.0 7.691656946917647e-07 1.0 +82 0.9264613389968872 0.8425225019454956 -1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 1.0 0.0 +87 0.9787143468856812 0.7902694940567017 -1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 1.0 0.0 +83 0.9787143468856812 0.8425225019454956 -1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 1.0 0.0 +123 0.15675920248031616 0.8272196054458618 1.0 9.614556262249607e-08 0.0 -1.6383324818319833e-14 1.7040126465417416e-07 -1.0 +83 0.10450613498687744 0.869072675704956 0.9999999403953552 9.614556262249607e-08 0.0 -1.6383324818319833e-14 1.7040125044331944e-07 -0.9999999403953552 +122 0.10450613498687744 0.8272196054458618 0.9999999403953552 9.614556262249607e-08 0.0 -1.6383324818319833e-14 1.7040125044331944e-07 -0.9999999403953552 +97 0.8947756886482239 0.1928093433380127 1.0 9.614556262249607e-08 7.691646146668063e-07 -7.691646146668063e-07 -1.4647156376668136e-07 1.0 +85 0.8425226211547852 0.3853335380554199 1.0 9.614556262249607e-08 7.691645578233874e-07 -7.691645578233874e-07 -1.4647156376668136e-07 1.0 +93 0.8425226211547852 0.1928093433380127 1.0 9.614556262249607e-08 7.691645578233874e-07 -7.691645578233874e-07 -1.4647156376668136e-07 1.0 +80 0.6859229803085327 0.4271864891052246 -1.8759531883461023e-07 0.9999999403953552 -7.490931466236361e-07 1.0437937447704826e-07 7.490931466236361e-07 0.9999999403953552 +97 0.6336699724197388 0.23466229438781738 -1.8759533304546494e-07 1.0 -7.49093203467055e-07 1.0437938158247562e-07 7.49093203467055e-07 1.0 +94 0.6859229803085327 0.23466229438781738 -1.8759534725631966e-07 1.0 -7.490932603104739e-07 1.0437938158247562e-07 7.490932603104739e-07 1.0 +84 0.9470287561416626 0.9882781505584717 0.0 -1.0 0.0 1.0 0.0 -0.0 +81 0.8947757482528687 0.936025083065033 0.0 -1.0 0.0 1.0 0.0 -0.0 +85 0.9470287561416626 0.936025083065033 0.0 -1.0 0.0 1.0 0.0 -0.0 +121 0.6336699724197388 0.04185295104980469 -3.8725107742720866e-07 1.0 -1.2317597291547657e-22 -4.6163925817872126e-14 -1.775385503540806e-20 1.0 +82 0.6859229803085327 0.0 -3.8725107742720866e-07 0.9999999403953552 -1.2317596029370209e-22 -4.6163922429740337e-14 -1.775385503540806e-20 0.9999999403953552 +123 0.6859229803085327 0.04185295104980469 -3.872510490054992e-07 0.9999999403953552 -1.2317596029370209e-22 -4.6163922429740337e-14 -1.7753853419820926e-20 0.9999999403953552 +122 0.8425227403640747 0.3853335380554199 -3.872511058489181e-07 1.0 -3.421229110938909e-21 3.462294605746999e-14 9.986545073004168e-21 -1.0 +87 0.7902697324752808 0.42718660831451416 -3.8725107742720866e-07 1.0 -3.421229110938909e-21 3.462294605746999e-14 9.986543457417034e-21 -1.0 +120 0.7902697324752808 0.3853335380554199 -3.872511058489181e-07 1.0 -3.421229110938909e-21 3.462294605746999e-14 9.986545073004168e-21 -1.0 +81 0.8425226211547852 0.0 0.0 1.0 0.0 -1.0437952369102277e-07 0.0 -1.0 +93 0.7902697324752808 0.19252431392669678 0.0 1.0 0.0 -1.0437952369102277e-07 0.0 -1.0 +85 0.7902697324752808 0.0 0.0 1.0 0.0 -1.0437952369102277e-07 0.0 -1.0 +80 0.15675920248031616 0.4418860673904419 1.0 9.614556972792343e-08 9.033052607665229e-22 -1.222288109349037e-14 1.2712891361843504e-07 -1.0 +99 0.10450613498687744 0.6344103217124939 1.0 9.614556972792343e-08 9.033052607665229e-22 -1.222288109349037e-14 1.2712891361843504e-07 -1.0 +81 0.10450613498687744 0.4418860673904419 0.9999999403953552 9.614556262249607e-08 9.03305159792327e-22 -1.2222880246457422e-14 1.2712889940758032e-07 -0.9999999403953552 +107 0.10450613498687744 0.6404300928115845 1.0 9.614557683335079e-08 0.0 0.0 0.0 -1.0 +94 0.15675920248031616 0.6344103813171387 0.9999999403953552 9.614556972792343e-08 0.0 0.0 0.0 -0.9999999403953552 +91 0.15675920248031616 0.6404300928115845 1.0 9.614557683335079e-08 0.0 0.0 0.0 -1.0 +113 0.7902697324752808 0.19854402542114258 0.0 1.0 0.0 0.0 0.0 -1.0 +99 0.8425226211547852 0.192524254322052 0.0 1.0 0.0 0.0 0.0 -1.0 +107 0.8425226211547852 0.19854402542114258 0.0 1.0 0.0 0.0 0.0 -1.0 +108 0.8425226211547852 0.1566908359527588 0.9999999403953552 9.614557683335079e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 0.9999999403953552 +96 0.8947756886482239 0.15067124366760254 1.0 9.614557683335079e-08 7.691645578233874e-07 -7.691645578233874e-07 -7.395177000065964e-14 1.0 +114 0.8947756886482239 0.1566908359527588 1.0 9.614558393877815e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 1.0 +91 0.6859229803085327 0.22864270210266113 0.0 1.0 0.0 0.0 0.0 1.0 +97 0.6336699724197388 0.23466229438781738 0.0 1.0 0.0 0.0 0.0 1.0 +119 0.6336699724197388 0.22864270210266113 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +121 0.8947756886482239 0.0 1.0 9.61456763093338e-08 1.5286573985379847e-20 1.2927936919224746e-14 -1.34462126766266e-07 1.0 +92 0.8425226211547852 0.15067124366760254 1.0 9.61456763093338e-08 1.5286573985379847e-20 1.2927936919224746e-14 -1.34462126766266e-07 1.0 +120 0.8425226807594299 0.0 1.0 9.61456763093338e-08 1.5286573985379847e-20 1.2927936919224746e-14 -1.34462126766266e-07 1.0 +101 0.6859229803085327 0.19854402542114258 0.0 1.0 -5.616386289375441e-08 -0.0 5.616386289375441e-08 1.0 +115 0.6336699724197388 0.20456361770629883 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +114 0.6336699724197388 0.19854402542114258 0.0 1.0 -7.691655810049269e-07 -0.0 7.691655810049269e-07 1.0 +100 0.6859229803085327 0.20456361770629883 0.0 1.0 0.0 0.0 0.0 1.0 +116 0.6336699724197388 0.21058344841003418 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +115 0.6336699724197388 0.20456361770629883 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +88 0.6859229803085327 0.21058344841003418 0.0 1.0 0.0 0.0 0.0 1.0 +117 0.6336699724197388 0.21660327911376953 0.0 1.0 0.0 0.0 0.0 1.0 +116 0.6336699724197388 0.21058344841003418 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +89 0.6859229803085327 0.21660327911376953 0.0 1.0 -7.691655810049269e-07 -0.0 7.691655810049269e-07 1.0 +118 0.6336699724197388 0.22262287139892578 0.0 1.0 -7.691656378483458e-07 -0.0 7.691656378483458e-07 1.0 +117 0.6336699724197388 0.21660327911376953 0.0 1.0 -7.691655810049269e-07 -0.0 7.691655810049269e-07 1.0 +90 0.6859229803085327 0.22262287139892578 0.0 1.0 -5.616386644646809e-08 -0.0 5.616386644646809e-08 1.0 +119 0.6336699724197388 0.22864270210266113 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +118 0.6336699724197388 0.22262287139892578 0.0 1.0 -7.691656946917647e-07 -0.0 7.691656946917647e-07 1.0 +93 0.8425226211547852 0.1928093433380127 1.0 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 1.0 +119 0.8947756886482239 0.18678951263427734 0.9999999403953552 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 0.9999999403953552 +97 0.8947756886482239 0.1928093433380127 1.0 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 1.0 +113 0.8425226211547852 0.18678951263427734 1.0 9.614590368300924e-08 2.2478749468402167e-19 6.471625129235783e-14 -6.731069674970058e-07 1.0 +118 0.8947756886482239 0.1807699203491211 0.9999999403953552 9.614588947215452e-08 2.2478749468402167e-19 6.471624451609426e-14 -6.73106910653587e-07 0.9999999403953552 +119 0.8947756886482239 0.18678951263427734 1.0 9.614589657758188e-08 2.2478749468402167e-19 6.471625129235783e-14 -6.731069674970058e-07 1.0 +112 0.8425226211547852 0.180769681930542 0.9999999403953552 9.614557683335079e-08 -3.7935171803837875e-06 3.7935171803837875e-06 3.64729893422705e-13 0.9999999403953552 +117 0.8947756886482239 0.17475008964538574 1.0 9.614557683335079e-08 -3.7935171803837875e-06 3.7935171803837875e-06 3.64729893422705e-13 1.0 +118 0.8947756886482239 0.1807699203491211 1.0 9.614558393877815e-08 -3.7935171803837875e-06 3.7935171803837875e-06 3.64729893422705e-13 1.0 +111 0.8425226211547852 0.17475008964538574 1.0 9.614556972792343e-08 1.5383290019599372e-06 -1.5383290019599372e-06 -1.4790351289626497e-13 1.0 +116 0.8947756886482239 0.1687302589416504 1.0 9.614556972792343e-08 1.5383291156467749e-06 -1.5383291156467749e-06 -1.4790352644879212e-13 1.0 +117 0.8947756886482239 0.17475008964538574 1.0 9.614556972792343e-08 1.5383290019599372e-06 -1.5383290019599372e-06 -1.4790351289626497e-13 1.0 +110 0.8425226211547852 0.1687302589416504 1.0 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 1.0 +115 0.8947756886482239 0.16271066665649414 0.9999999403953552 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 0.9999999403953552 +116 0.8947756886482239 0.1687302589416504 1.0 9.614556972792343e-08 7.691645009799686e-07 -7.691645009799686e-07 -7.395175644813248e-14 1.0 +109 0.8425226211547852 0.16271066665649414 1.0 9.614590368300924e-08 0.0 -0.0 0.0 1.0 +114 0.8947756886482239 0.1566908359527588 0.9999999403953552 9.614588947215452e-08 0.0 -0.0 0.0 0.9999999403953552 +115 0.8947756886482239 0.16271066665649414 1.0 9.614589657758188e-08 0.0 -0.0 0.0 1.0 +92 0.7902697324752808 0.23466241359710693 -1.6827674187425146e-07 1.0 -3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +102 0.8425227403640747 0.22864264249801636 -1.6827674187425146e-07 1.0 -3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +98 0.8425227403640747 0.23466235399246216 -1.6827672766339674e-07 1.0 -3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +108 0.7902697324752808 0.22864270210266113 -1.6827802085117582e-07 1.0 -3.7152912568672036e-07 6.252019301572487e-14 -3.7152909726501093e-07 -0.9999999403953552 +103 0.8425226211547852 0.22262293100357056 -1.6827802085117582e-07 1.0 -3.7152909726501093e-07 6.252018623946129e-14 -3.715290688433015e-07 -0.9999999403953552 +102 0.8425227403640747 0.22864264249801636 -1.6827802085117582e-07 1.0 -3.7152912568672036e-07 6.252019301572487e-14 -3.7152909726501093e-07 -0.9999999403953552 +109 0.7902697324752808 0.22262293100357056 0.0 1.0 0.0 0.0 0.0 -1.0 +104 0.8425226211547852 0.21660315990447998 0.0 1.0 0.0 0.0 0.0 -1.0 +103 0.8425226211547852 0.22262293100357056 0.0 1.0 0.0 0.0 0.0 -1.0 +110 0.7902697324752808 0.21660321950912476 0.0 1.0 -3.715367427048477e-07 -0.0 -3.715367427048477e-07 -1.0 +105 0.8425226211547852 0.21058344841003418 0.0 1.0 -3.7153677112655714e-07 -0.0 -3.7153677112655714e-07 -1.0 +104 0.8425226211547852 0.21660315990447998 0.0 1.0 -3.715367142831383e-07 -0.0 -3.715367142831383e-07 -1.0 +105 0.8425226211547852 0.21058344841003418 -5.0707068766087104e-08 1.0 7.642763080184523e-07 -3.87542069561677e-14 7.642763080184523e-07 -1.0 +112 0.7902697324752808 0.20456373691558838 -5.0707068766087104e-08 1.0 7.642763080184523e-07 -3.87542069561677e-14 7.642763080184523e-07 -1.0 +106 0.8425226211547852 0.20456373691558838 -5.0707068766087104e-08 1.0 7.642763648618711e-07 -3.875421034429949e-14 7.642763648618711e-07 -1.0 +112 0.7902697324752808 0.20456373691558838 -1.682770687239099e-07 1.0 7.691657515351835e-07 -1.2943296337063898e-13 7.691657515351835e-07 -1.0 +107 0.8425226211547852 0.19854402542114258 -1.682770687239099e-07 1.0 7.691657515351835e-07 -1.2943296337063898e-13 7.691657515351835e-07 -1.0 +106 0.8425226211547852 0.20456373691558838 -1.682770687239099e-07 1.0 7.691657515351835e-07 -1.2943296337063898e-13 7.691657515351835e-07 -1.0 +98 0.10450613498687744 0.6765484809875488 0.9999999403953552 9.614557683335079e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 -0.9999999403953552 +101 0.15675920248031616 0.670528769493103 1.0 9.614557683335079e-08 -7.691645578233874e-07 -7.691645578233874e-07 -7.395177000065964e-14 -1.0 +95 0.15675920248031616 0.6765484809875488 1.0 9.614558393877815e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 -1.0 +102 0.10450613498687744 0.670528769493103 1.0 9.614576157446209e-08 -7.691645009799686e-07 -7.691645578233874e-07 6.731023631800781e-07 -1.0 +100 0.15675920248031616 0.6645089983940125 0.9999999403953552 9.614575446903473e-08 -7.691645009799686e-07 -7.691645578233874e-07 6.731023063366592e-07 -0.9999999403953552 +101 0.15675920248031616 0.670528769493103 1.0 9.614576157446209e-08 -7.691645009799686e-07 -7.691645578233874e-07 6.731023631800781e-07 -1.0 +103 0.10450613498687744 0.6645090579986572 1.0 9.6145541306214e-08 -1.1406895055188215e-06 -1.1406895055188215e-06 -1.0967219970722808e-13 -1.0 +88 0.15675920248031616 0.6584892272949219 1.0 9.614553420078664e-08 -1.1406893918319838e-06 -1.1406893918319838e-06 -1.096721929309645e-13 -1.0 +100 0.15675920248031616 0.6645089983940125 1.0 9.614553420078664e-08 -1.1406893918319838e-06 -1.1406893918319838e-06 -1.096721929309645e-13 -1.0 +104 0.10450613498687744 0.6584892868995667 1.0 9.614558393877815e-08 -1.1406931434976286e-06 -1.1406931434976286e-06 -1.0967259950677918e-13 -1.0 +89 0.15675920248031616 0.6524695158004761 0.9999999403953552 9.614557683335079e-08 -1.140693029810791e-06 -1.140693029810791e-06 -1.0967258595425203e-13 -0.9999999403953552 +88 0.15675920248031616 0.6584892272949219 1.0 9.614558393877815e-08 -1.1406931434976286e-06 -1.1406931434976286e-06 -1.0967259950677918e-13 -1.0 +105 0.10450613498687744 0.6524695158004761 0.9999999403953552 9.614557683335079e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 -0.9999999403953552 +90 0.15675920248031616 0.6464498043060303 1.0 9.614557683335079e-08 -7.691645578233874e-07 -7.691645578233874e-07 -7.395177000065964e-14 -1.0 +89 0.15675920248031616 0.6524695158004761 1.0 9.614558393877815e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.395176322439606e-14 -1.0 +106 0.10450613498687744 0.6464498043060303 1.0 9.614524287826498e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.39515057263801e-14 -1.0 +91 0.15675920248031616 0.6404300928115845 0.9999999403953552 9.614523577283762e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.39515057263801e-14 -0.9999999403953552 +90 0.15675920248031616 0.6464498043060303 1.0 9.614524998369234e-08 -7.691645009799686e-07 -7.691645009799686e-07 -7.39515057263801e-14 -1.0 +121 0.6336699724197388 0.04185295104980469 0.0 0.9999999403953552 2.2260181531819235e-21 -2.3117233360859732e-14 -2.2260181531819235e-21 0.9999999403953552 +125 0.5293234586715698 0.0 0.0 1.0 2.2260183551303152e-21 -2.3117235054925626e-14 -2.2260183551303152e-21 1.0 +86 0.6336699724197388 0.0 0.0 1.0 2.2260181531819235e-21 -2.3117235054925626e-14 -2.2260181531819235e-21 1.0 +92 0.7902697324752808 0.23466241359710693 -4.302795844068896e-07 1.0 -5.456676240877909e-21 3.84699901329142e-14 1.1096175553001376e-20 -1.0 +122 0.8425227403640747 0.3853335380554199 -4.302795844068896e-07 1.0 -5.456675836981126e-21 3.84699901329142e-14 1.1096175553001376e-20 -1.0 +120 0.7902697324752808 0.3853335380554199 -4.3027952756347077e-07 0.9999999403953552 -5.456675433084342e-21 3.8469986744782414e-14 1.1096173129620675e-20 -0.9999999403953552 +95 0.6859229803085327 0.19252419471740723 -4.302794422983425e-07 1.0 6.094729857245278e-15 1.333738310904664e-07 5.1293289684032836e-14 1.0 +121 0.6336699724197388 0.04185295104980469 -4.302794422983425e-07 1.0 6.094729857245278e-15 1.333738310904664e-07 5.1293289684032836e-14 1.0 +123 0.6859229803085327 0.04185295104980469 -4.302794422983425e-07 1.0 6.094729857245278e-15 1.333738310904664e-07 5.1293289684032836e-14 1.0 +95 0.15675920248031616 0.6765484809875488 1.0 9.614553420078664e-08 -7.691644441365497e-07 -7.691644441365497e-07 1.4200097098182596e-07 -1.0 +122 0.10450613498687744 0.8272196054458618 1.0 9.6145541306214e-08 -7.691645009799686e-07 -7.691645009799686e-07 1.4200097098182596e-07 -1.0 +98 0.10450613498687744 0.6765484809875488 1.0 9.614553420078664e-08 -7.691644441365497e-07 -7.691644441365497e-07 1.4200097098182596e-07 -1.0 +125 1.0 0.05225306749343872 0.0 0.0 -0.9999999403953552 0.9999999403953552 1.9229123893182987e-07 0.0 +126 0.9581468105316162 0.0 0.0 0.0 -1.0 1.0 1.9229125314268458e-07 0.0 +124 1.0 0.0 0.0 0.0 -1.0 1.0 1.9229125314268458e-07 0.0 +87 0.9787143468856812 0.7902694940567017 -1.0 -2.3035164531393093e-07 -1.2000970173176029e-06 -2.3035164531393093e-07 1.0 -2.7644431340421993e-13 +125 0.9264613389968872 0.6859229803085327 -1.0 -2.3035165952478565e-07 -1.2000970173176029e-06 -2.3035165952478565e-07 1.0 -2.7644434050927424e-13 +124 0.9787143468856812 0.6859229803085327 -1.0 -2.3035164531393093e-07 -1.2000970173176029e-06 -2.3035164531393093e-07 1.0 -2.7644431340421993e-13 +120 0.3845745921134949 0.9734193086624146 1.0 9.614580420702623e-08 -1.2426014563970966e-06 -9.614556262249607e-08 1.0 1.9258519046161382e-07 +127 0.4368276596069336 0.8690727949142456 1.0 9.614580420702623e-08 -1.2426015700839343e-06 -9.614556262249607e-08 1.0 1.9258519046161382e-07 +121 0.4368276596069336 0.9734193086624146 1.0 9.614579710159887e-08 -1.2426014563970966e-06 -9.614555551706871e-08 1.0 1.9258519046161382e-07 +87 0.7902697324752808 0.42718660831451416 -1.230267940854901e-07 0.9999999403953552 2.1569333341631136e-07 -3.4188655324753764e-15 2.1569333341631136e-07 -0.9999999403953552 +126 0.6859232187271118 0.3853335380554199 -1.2302680829634483e-07 1.0 2.1569334762716608e-07 -3.4188655324753764e-15 2.1569334762716608e-07 -1.0 +120 0.7902697324752808 0.3853335380554199 -1.2302680829634483e-07 1.0 2.1569334762716608e-07 -3.4188655324753764e-15 2.1569334762716608e-07 -1.0 +21 0.2646617889404297 0.3639061450958252 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +150 0.0 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +149 0.0 0.3639061450958252 1.0 0.0 0.0 -0.0 0.0 1.0 +20 0.2646617889404297 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +149 0.0 0.3639061450958252 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +148 0.0 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +19 0.2646617889404297 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +148 0.0 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +147 0.0 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +18 0.2646617889404297 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +147 0.0 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +146 0.0 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +17 0.2646617889404297 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +146 0.0 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +145 0.0 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +16 0.2646617889404297 0.23393964767456055 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +145 0.0 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +144 0.0 0.23393964767456055 1.0 0.0 -2.1117401161063754e-07 2.1117399739978282e-07 0.0 0.9999999403953552 +15 0.2646617889404297 0.20794641971588135 1.0 0.0 -2.8072191682326775e-08 2.8072189905969935e-08 0.0 0.9999999403953552 +144 0.0 0.23393964767456055 1.0 0.0 -2.1117401161063754e-07 2.1117399739978282e-07 0.0 0.9999999403953552 +143 0.0 0.2079463005065918 1.0 0.0 -4.5042025931252283e-07 4.504202308908134e-07 0.0 0.9999999403953552 +14 0.2646617889404297 0.1819530725479126 1.0 0.0 -2.13988286645872e-07 2.13988286645872e-07 0.0 1.0 +143 0.0 0.2079463005065918 0.9999999403953552 0.0 -2.8446304867202343e-08 2.8446304867202343e-08 0.0 0.9999999403953552 +142 0.0 0.1819530725479126 1.0 0.0 0.0 -0.0 0.0 1.0 +13 0.2646617889404297 0.15595972537994385 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +142 0.0 0.1819530725479126 1.0 0.0 0.0 -0.0 0.0 1.0 +141 0.0 0.15595972537994385 1.0 0.0 0.0 -0.0 0.0 1.0 +12 0.2646617889404297 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +141 0.0 0.15595972537994385 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +140 0.0 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +11 0.2646617889404297 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +140 0.0 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +139 0.0 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +10 0.2646617889404297 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +139 0.0 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +138 0.0 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +9 0.2646617889404297 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +138 0.0 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +137 0.0 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +8 0.2646617889404297 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +137 0.0 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +136 0.0 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +7 0.2646617889404297 0.0 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +136 0.0 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +135 0.0 0.0 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +153 0.5293235778808594 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +24 0.2646617889404297 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +25 0.2646617889404297 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +132 0.9581469297409058 0.5293235778808594 0.0 1.0 0.0 -1.0 0.0 0.0 +6 0.9264613389968872 0.2646617889404297 0.0 1.0 0.0 -1.0 0.0 0.0 +4 0.9581469297409058 0.2646617889404297 0.0 1.0 0.0 -1.0 0.0 0.0 +128 0.3323215842247009 0.8690727353096008 -1.0 0.0 0.0 0.0 -1.0 0.0 +2 0.22154772281646729 0.9798465967178345 -1.0 0.0 0.0 0.0 -1.0 0.0 +0 0.22154772281646729 0.8690727353096008 -1.0 0.0 0.0 0.0 -1.0 0.0 +131 0.11077386140823364 0.869072437286377 0.0 -1.0 0.0 0.0 0.0 1.0 +128 0.0 0.9798464775085449 0.0 -1.0 0.0 0.0 0.0 1.0 +129 0.0 0.869072437286377 0.0 -1.0 0.0 0.0 0.0 1.0 +151 0.9264613389968872 0.8577787280082703 0.0 -1.0 0.0 0.0 0.0 1.0 +132 0.8947757482528687 0.8837719559669495 0.0 -1.0 0.0 0.0 0.0 1.0 +152 0.8947757482528687 0.8577787280082703 0.0 -1.0 0.0 0.0 0.0 1.0 +135 0.926461398601532 0.4418860077857971 0.0 -1.0 0.0 0.0 0.0 1.0 +167 0.8947757482528687 0.46787935495376587 0.0 -1.0 0.0 0.0 0.0 1.0 +133 0.8947758078575134 0.4418860077857971 0.0 -1.0 0.0 0.0 0.0 1.0 +136 0.926461398601532 0.46787935495376587 0.0 -1.0 3.1710919756733347e-07 0.0 3.1710919756733347e-07 1.0 +166 0.8947757482528687 0.49387258291244507 0.0 -1.0 3.1710919756733347e-07 0.0 3.1710919756733347e-07 1.0 +167 0.8947757482528687 0.46787935495376587 0.0 -1.0 3.171092259890429e-07 0.0 3.171092259890429e-07 1.0 +137 0.926461398601532 0.49387258291244507 0.0 -1.0 1.3869561144019826e-07 0.0 1.3869561144019826e-07 1.0 +165 0.8947757482528687 0.5198659300804138 0.0 -0.9999999403953552 1.2412459682309418e-07 0.0 1.2412459682309418e-07 0.9999999403953552 +166 0.8947757482528687 0.49387258291244507 0.0 -1.0 3.171091407239146e-07 0.0 3.171091407239146e-07 1.0 +165 0.8947757482528687 0.5198659300804138 2.2620818640461948e-07 -1.0 -5.718601983062399e-07 1.2935945446334446e-13 -5.718601983062399e-07 1.0 +139 0.926461398601532 0.545859158039093 2.2620818640461948e-07 -1.0 -5.718601983062399e-07 1.2935945446334446e-13 -5.718601983062399e-07 1.0 +164 0.8947757482528687 0.545859158039093 2.2620818640461948e-07 -1.0 -5.718601983062399e-07 1.2935945446334446e-13 -5.718601983062399e-07 1.0 +164 0.8947757482528687 0.545859158039093 -6.172037103624461e-08 -1.0 -1.2390245274218614e-06 -7.647305504772037e-14 -1.2390245274218614e-06 1.0 +140 0.926461398601532 0.5718525052070618 -6.172037103624461e-08 -1.0 -1.2390246411086991e-06 -7.647306182398395e-14 -1.2390246411086991e-06 1.0 +163 0.8947757482528687 0.5718525052070618 -6.172037103624461e-08 -1.0 -1.2390246411086991e-06 -7.647306182398395e-14 -1.2390246411086991e-06 1.0 +163 0.8947757482528687 0.5718525052070618 -6.172037103624461e-08 -1.0 2.4780492822173983e-06 1.529461236479679e-13 2.4780492822173983e-06 1.0 +141 0.926461398601532 0.597845733165741 -6.172037103624461e-08 -1.0 2.4780492822173983e-06 1.529461236479679e-13 2.4780492822173983e-06 1.0 +162 0.8947757482528687 0.5978458523750305 -6.172037103624461e-08 -1.0 2.4780492822173983e-06 1.529461236479679e-13 2.4780492822173983e-06 1.0 +162 0.8947757482528687 0.5978458523750305 -6.172024313855218e-08 -1.0 -1.239030439137423e-06 -7.647325833562771e-14 -1.239030439137423e-06 1.0 +142 0.926461398601532 0.6238390803337097 -6.172024313855218e-08 -1.0 -1.239030439137423e-06 -7.647325833562771e-14 -1.239030439137423e-06 1.0 +161 0.8947757482528687 0.6238390803337097 -6.172024313855218e-08 -1.0 -1.239030439137423e-06 -7.647325833562771e-14 -1.239030439137423e-06 1.0 +161 0.8947757482528687 0.6238390803337097 -6.172024313855218e-08 -1.0 2.5733588699949905e-06 1.588283405620436e-13 2.5733588699949905e-06 1.0 +143 0.9264613389968872 0.6498323082923889 -6.172024313855218e-08 -1.0 2.5733588699949905e-06 1.588283405620436e-13 2.5733588699949905e-06 1.0 +160 0.8947757482528687 0.6498324275016785 -6.172024313855218e-08 -1.0 2.573358642621315e-06 1.5882832700951643e-13 2.573358642621315e-06 1.0 +160 0.8947757482528687 0.6498324275016785 1.644879432660673e-07 -1.0 -1.9062008504988626e-06 3.135470669993895e-13 -1.9062008504988626e-06 1.0 +144 0.9264613389968872 0.6758256554603577 1.644879290552126e-07 -0.9999999403953552 -1.9062008504988626e-06 3.135470669993895e-13 -1.9062008504988626e-06 0.9999999403953552 +159 0.8947757482528687 0.6758256554603577 1.644879432660673e-07 -1.0 -1.9062008504988626e-06 3.135470669993895e-13 -1.9062008504988626e-06 1.0 +159 0.8947757482528687 0.6758256554603577 3.9069516333256615e-07 -1.0 -2.5733588699949905e-06 1.005398889142306e-12 -2.5733588699949905e-06 1.0 +145 0.9264613389968872 0.7018190026283264 3.9069516333256615e-07 -1.0 -2.5733588699949905e-06 1.005398889142306e-12 -2.5733588699949905e-06 1.0 +158 0.8947757482528687 0.7018190026283264 3.9069516333256615e-07 -1.0 -2.5733588699949905e-06 1.005398889142306e-12 -2.5733588699949905e-06 1.0 +158 0.8947757482528687 0.7018190026283264 -1.2344074207248923e-07 -1.0 1.2390246411086991e-06 1.529461236479679e-13 1.2390246411086991e-06 1.0 +146 0.9264613389968872 0.7278122305870056 -1.2344075628334394e-07 -1.0 1.2390246411086991e-06 1.529461236479679e-13 1.2390246411086991e-06 1.0 +157 0.8947757482528687 0.7278123497962952 -1.2344074207248923e-07 -1.0 1.2390247547955369e-06 1.5294613720049505e-13 1.2390247547955369e-06 1.0 +157 0.8947757482528687 0.7278123497962952 -1.2344048627710436e-07 -1.0 1.239030439137423e-06 1.5294651667125542e-13 1.239030439137423e-06 1.0 +147 0.9264613389968872 0.7538054585456848 -1.2344048627710436e-07 -1.0 1.239030439137423e-06 1.5294651667125542e-13 1.239030439137423e-06 1.0 +156 0.8947757482528687 0.7538055777549744 -1.2344048627710436e-07 -1.0 1.2390305528242607e-06 1.5294653022378257e-13 1.2390305528242607e-06 1.0 +156 0.8947757482528687 0.7538055777549744 -1.2344074207248923e-07 -1.0 -2.573370920799789e-06 -3.1765882242337784e-13 -2.573370920799789e-06 1.0 +148 0.9264613389968872 0.7797988057136536 -1.2344075628334394e-07 -1.0 -2.573370920799789e-06 -3.1765882242337784e-13 -2.573370920799789e-06 1.0 +155 0.8947757482528687 0.7797988057136536 -1.2344074207248923e-07 -1.0 -2.573370920799789e-06 -3.1765882242337784e-13 -2.573370920799789e-06 1.0 +155 0.8947757482528687 0.7797988057136536 -1.2344021627086477e-07 -1.0 -2.4780492822173983e-06 -3.058909733583831e-13 -2.478049054843723e-06 0.9999999403953552 +149 0.9264613389968872 0.8057921528816223 -1.2344021627086477e-07 -1.0 -2.4780492822173983e-06 -3.058909733583831e-13 -2.478049054843723e-06 0.9999999403953552 +154 0.8947757482528687 0.8057921528816223 -1.2344021627086477e-07 -1.0 -2.4780495095910737e-06 -3.058910004634374e-13 -2.4780492822173983e-06 0.9999999403953552 +154 0.8947757482528687 0.8057921528816223 -6.172037103624461e-08 -1.0 -1.2390246411086991e-06 -7.647306182398395e-14 -1.2390246411086991e-06 1.0 +150 0.9264613389968872 0.8317855000495911 -6.172037103624461e-08 -1.0 -1.2390246411086991e-06 -7.647306182398395e-14 -1.2390246411086991e-06 1.0 +153 0.8947757482528687 0.8317855000495911 -6.172037103624461e-08 -1.0 -1.2390246411086991e-06 -7.647306182398395e-14 -1.2390246411086991e-06 1.0 +153 0.8947757482528687 0.8317855000495911 0.0 -1.0 0.0 0.0 0.0 1.0 +151 0.9264613389968872 0.8577787280082703 0.0 -1.0 0.0 0.0 0.0 1.0 +152 0.8947757482528687 0.8577787280082703 0.0 -1.0 0.0 0.0 0.0 1.0 +184 0.42142078280448914 0.6765483617782593 -7.705211828579195e-07 1.0 0.0 -1.0 -7.705211828579195e-07 0.0 +189 0.4736737608909607 0.670528769493103 -7.692724466323853e-07 1.0 0.0 -1.0 -7.692724466323853e-07 0.0 +183 0.4736737608909607 0.6765483617782593 -7.04278647845058e-07 1.0 0.0 -1.0 -7.04278647845058e-07 0.0 +175 0.9470286965370178 0.8837718963623047 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +170 0.8947757482528687 0.9360251426696777 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +171 0.8947757482528687 0.8837718963623047 0.0 -1.0 0.0 0.0 0.0 1.0 +171 0.20901250839233398 0.869072675704956 7.490921234420966e-07 4.379588247616084e-08 -1.0 -1.0 3.280715136404558e-14 -7.490921234420966e-07 +183 0.15675926208496094 0.6765484809875488 7.490921234420966e-07 4.379588602887452e-08 -1.0 -1.0 3.280715136404558e-14 -7.490921234420966e-07 +186 0.20901250839233398 0.6765484809875488 7.490921802855155e-07 4.379588247616084e-08 -1.0 -1.0 3.280715475217737e-14 -7.490921802855155e-07 +173 0.31691503524780273 0.869072437286377 -9.987907105823979e-07 -4.379633722351173e-08 -1.0 1.0 -4.374337331703067e-14 -9.987907105823979e-07 +185 0.2646617889404297 0.6765484809875488 -9.987907105823979e-07 -4.379633722351173e-08 -1.0 1.0 -4.374337331703067e-14 -9.987907105823979e-07 +181 0.31691503524780273 0.6765484809875488 -9.987907105823979e-07 -4.379633722351173e-08 -1.0 1.0 -4.374337331703067e-14 -9.987907105823979e-07 +168 0.4736737608909607 0.4418860673904419 2.52774214004603e-07 1.0 0.0 -1.0 2.52774214004603e-07 0.0 +185 0.42142078280448914 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 -1.0 1.3791679975838633e-06 0.0 +172 0.42142078280448914 0.4418860673904419 0.0 1.0 0.0 -1.0 0.0 0.0 +169 0.48908063769340515 0.92132568359375 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +172 0.4368276596069336 0.973578929901123 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +173 0.4368276596069336 0.92132568359375 0.0 1.0 0.0 0.0 0.0 1.0 +183 0.4736737608909607 0.6765483617782593 -7.04278647845058e-07 1.0 0.0 -1.0 -7.04278647845058e-07 0.0 +174 0.42142078280448914 0.8690727949142456 -1.29773908952302e-07 1.0 0.0 -1.0 -1.29773908952302e-07 0.0 +184 0.42142078280448914 0.6765483617782593 -7.705211828579195e-07 1.0 0.0 -1.0 -7.705211828579195e-07 0.0 +180 0.4736737310886383 0.6344103813171387 7.04278647845058e-07 1.0 0.0 1.0 -7.04278647845058e-07 0.0 +171 0.5259267091751099 0.44188594818115234 1.29773908952302e-07 1.0 0.0 1.0 -1.29773908952302e-07 0.0 +186 0.5259267091751099 0.6344103813171387 7.705211828579195e-07 1.0 0.0 1.0 -7.705211828579195e-07 0.0 +173 0.4736737310886383 0.869072437286377 1.6851643636073277e-07 1.0 0.0 1.0 -1.6851643636073277e-07 0.0 +187 0.5259267091751099 0.6765484809875488 7.97253221662686e-07 1.0 0.0 1.0 -7.97253221662686e-07 0.0 +169 0.5259267091751099 0.869072437286377 0.0 1.0 0.0 1.0 -0.0 0.0 +187 0.20901250839233398 0.6344103813171387 7.042775109766808e-07 0.0 -1.0 -1.0 0.0 -7.042775109766808e-07 +168 0.15675926208496094 0.4418860673904419 1.2977395158486615e-07 0.0 -1.0 -1.0 0.0 -1.2977395158486615e-07 +169 0.20901250839233398 0.4418860673904419 0.0 0.0 -1.0 -1.0 0.0 0.0 +182 0.15675926208496094 0.6344103813171387 4.126639510104724e-07 0.0 -1.0 -1.0 0.0 -4.126639510104724e-07 +195 0.20901250839233398 0.6404300928115845 7.130008157218981e-07 0.0 -1.0 -1.0 0.0 -7.130008157218981e-07 +179 0.15675926208496094 0.6404300928115845 0.0 0.0 -1.0 -1.0 0.0 0.0 +195 0.5259267091751099 0.6705284118652344 3.542138244938542e-07 1.0 0.0 1.0 -3.542138244938542e-07 0.0 +181 0.4736737310886383 0.6765484809875488 5.272975158732152e-07 0.9999999403953552 0.0 0.9999999403953552 -5.272975158732152e-07 0.0 +201 0.4736737310886383 0.6705284118652344 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +184 0.2646617889404297 0.6344103813171387 -7.720890948803572e-07 5.449358297937579e-08 -1.0 1.0 4.207390187117854e-14 -7.720890948803572e-07 +196 0.31691503524780273 0.6404299736022949 -7.720890380369383e-07 5.449358297937579e-08 -0.9999999403953552 0.9999999403953552 4.2073898483046754e-14 -7.720890380369383e-07 +202 0.2646617889404297 0.6404299736022949 -7.72089151723776e-07 5.449358297937579e-08 -1.0 1.0 4.207390525931033e-14 -7.72089151723776e-07 +207 0.42142078280448914 0.6404300928115845 7.012266109995835e-07 1.0 0.0 -1.0 7.012266109995835e-07 0.0 +182 0.4736737608909607 0.6344103813171387 8.043285788517096e-07 0.9999999403953552 0.0 -0.9999999403953552 8.043285788517096e-07 0.0 +179 0.4736737608909607 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 -1.0 -3.565011184036848e-07 0.0 +180 0.31691503524780273 0.6344103813171387 0.0 0.0 -1.0 1.0 0.0 0.0 +174 0.2646617889404297 0.44188594818115234 0.0 0.0 -1.0 1.0 0.0 0.0 +175 0.31691503524780273 0.44188594818115234 0.0 0.0 -1.0 1.0 0.0 0.0 +202 0.42142078280448914 0.670528769493103 -4.1412678797314584e-07 1.0 0.0 -1.0 -4.1412678797314584e-07 0.0 +188 0.4736737608909607 0.6645089387893677 -3.5650114682539424e-07 1.0 0.0 -1.0 -3.5650114682539424e-07 0.0 +189 0.4736737608909607 0.670528769493103 -7.692724466323853e-07 1.0 0.0 -1.0 -7.692724466323853e-07 0.0 +204 0.42142078280448914 0.6584893465042114 -3.5422792166173167e-07 1.0 0.0 -1.0 -3.5422792166173167e-07 0.0 +188 0.4736737608909607 0.6645089387893677 -3.5650114682539424e-07 1.0 0.0 -1.0 -3.5650114682539424e-07 0.0 +203 0.42142078280448914 0.6645089387893677 0.0 1.0 0.0 -1.0 0.0 0.0 +204 0.42142078280448914 0.6584893465042114 -3.5422792166173167e-07 1.0 0.0 -1.0 -3.5422792166173167e-07 0.0 +177 0.4736737608909607 0.6524695158004761 -4.124855195186683e-07 0.9999999403953552 0.0 -0.9999999403953552 -4.124855195186683e-07 0.0 +176 0.4736737608909607 0.6584893465042114 0.0 1.0 0.0 -1.0 0.0 0.0 +205 0.42142078280448914 0.6524695158004761 -7.644472361789667e-07 1.0 0.0 -1.0 -7.644472361789667e-07 0.0 +178 0.4736737608909607 0.6464498043060303 -7.689871495131229e-07 1.0 0.0 -1.0 -7.689871495131229e-07 0.0 +177 0.4736737608909607 0.6524695158004761 -4.124855195186683e-07 0.9999999403953552 0.0 -0.9999999403953552 -4.124855195186683e-07 0.0 +206 0.42142078280448914 0.6464498043060303 -4.102198261080048e-07 1.0 0.0 -1.0 -4.102198261080048e-07 0.0 +179 0.4736737608909607 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 -1.0 -3.565011184036848e-07 0.0 +178 0.4736737608909607 0.6464498043060303 -7.689871495131229e-07 1.0 0.0 -1.0 -7.689871495131229e-07 0.0 +185 0.2646617889404297 0.6765484809875488 -5.6163770523198764e-08 0.0 -1.0 1.0 0.0 -5.6163770523198764e-08 +201 0.31691503524780273 0.6705284118652344 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +181 0.31691503524780273 0.6765484809875488 -7.691646146668063e-07 0.0 -1.0 1.0 0.0 -7.691646146668063e-07 +206 0.2646617889404297 0.6645088195800781 -5.6163734996061976e-08 0.0 -1.0 1.0 0.0 -5.6163734996061976e-08 +201 0.31691503524780273 0.6705284118652344 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +207 0.2646617889404297 0.6705284118652344 0.0 0.0 -1.0 1.0 0.0 0.0 +205 0.2646617889404297 0.6584892272949219 -7.720890948803572e-07 5.4493000334332464e-08 -1.0 1.0 4.2073451249650604e-14 -7.720890948803572e-07 +200 0.31691503524780273 0.6645088195800781 -7.720890380369383e-07 5.4492996781618785e-08 -0.9999999403953552 0.9999999403953552 4.2073447861518815e-14 -7.720890380369383e-07 +206 0.2646617889404297 0.6645088195800781 -7.72089151723776e-07 5.449300388704614e-08 -1.0 1.0 4.207345463778239e-14 -7.72089151723776e-07 +204 0.2646617889404297 0.6524691581726074 -1.536257741463487e-06 2.484735972529961e-08 -1.0 1.0 3.8171946343829727e-14 -1.536257741463487e-06 +199 0.31691503524780273 0.6584892272949219 -1.5362576277766493e-06 2.484735972529961e-08 -1.0 1.0 3.817194295569794e-14 -1.5362576277766493e-06 +205 0.2646617889404297 0.6584892272949219 -1.536257741463487e-06 2.484736150165645e-08 -1.0 1.0 3.8171946343829727e-14 -1.536257741463487e-06 +204 0.2646617889404297 0.6524691581726074 -5.616375986505773e-08 0.0 -1.0 1.0 0.0 -5.616375986505773e-08 +197 0.31691503524780273 0.6464495658874512 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +198 0.31691503524780273 0.6524691581726074 -7.691645009799686e-07 0.0 -1.0 1.0 0.0 -7.691645009799686e-07 +202 0.2646617889404297 0.6404299736022949 -5.6163734996061976e-08 0.0 -1.0 1.0 0.0 -5.6163734996061976e-08 +197 0.31691503524780273 0.6464495658874512 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +203 0.2646617889404297 0.6464495658874512 0.0 0.0 -1.0 1.0 0.0 0.0 +186 0.5259267091751099 0.6344103813171387 7.705211828579195e-07 1.0 0.0 1.0 -7.705211828579195e-07 0.0 +196 0.4736737310886383 0.6404299736022949 7.692724466323853e-07 1.0 0.0 1.0 -7.692724466323853e-07 0.0 +180 0.4736737310886383 0.6344103813171387 7.04278647845058e-07 1.0 0.0 1.0 -7.04278647845058e-07 0.0 +190 0.5259267091751099 0.6404299736022949 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +197 0.4736737310886383 0.6464495658874512 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +196 0.4736737310886383 0.6404299736022949 7.692724466323853e-07 1.0 0.0 1.0 -7.692724466323853e-07 0.0 +191 0.5259267091751099 0.6464495658874512 3.5424190514277143e-07 1.0 0.0 1.0 -3.5424190514277143e-07 0.0 +198 0.4736737310886383 0.6524691581726074 4.124865427002078e-07 0.9999999403953552 0.0 0.9999999403953552 -4.124865427002078e-07 0.0 +197 0.4736737310886383 0.6464495658874512 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +192 0.5259267091751099 0.6524691581726074 1.1222696230106521e-06 1.0 0.0 1.0 -1.1222696230106521e-06 0.0 +199 0.4736737310886383 0.6584892272949219 1.1817544418590842e-06 0.9999999403953552 0.0 0.9999999403953552 -1.1817544418590842e-06 0.0 +198 0.4736737310886383 0.6524691581726074 4.124865427002078e-07 0.9999999403953552 0.0 0.9999999403953552 -4.124865427002078e-07 0.0 +193 0.5259267091751099 0.6584892272949219 1.18214984468068e-06 0.9999999403953552 0.0 0.9999999403953552 -1.18214984468068e-06 0.0 +200 0.4736737310886383 0.6645088195800781 1.12577356503607e-06 1.0 0.0 1.0 -1.12577356503607e-06 0.0 +199 0.4736737310886383 0.6584892272949219 1.1817544418590842e-06 0.9999999403953552 0.0 0.9999999403953552 -1.1817544418590842e-06 0.0 +194 0.5259267091751099 0.6645088195800781 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +201 0.4736737310886383 0.6705284118652344 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +200 0.4736737310886383 0.6645088195800781 1.12577356503607e-06 1.0 0.0 1.0 -1.12577356503607e-06 0.0 +189 0.15675926208496094 0.6705288887023926 7.720890948803572e-07 -5.4478874744745553e-08 -1.0 -1.0 -4.206254485342176e-14 -7.720890948803572e-07 +186 0.20901250839233398 0.6765484809875488 7.720890380369383e-07 -5.4478874744745553e-08 -0.9999999403953552 -0.9999999403953552 -4.206254146528997e-14 -7.720890380369383e-07 +183 0.15675926208496094 0.6765484809875488 7.72089151723776e-07 -5.4478874744745553e-08 -1.0 -1.0 -4.2062548241553546e-14 -7.72089151723776e-07 +189 0.15675926208496094 0.6705288887023926 -2.770127025542024e-07 0.0 -1.0 -1.0 0.0 2.770127025542024e-07 +191 0.20901250839233398 0.6645090579986572 -1.7583420230948832e-06 0.0 -1.0 -1.0 0.0 1.7583420230948832e-06 +190 0.20901250839233398 0.6705286502838135 -3.793697942455765e-06 0.0 -1.0 -1.0 0.0 3.793697942455765e-06 +176 0.15675926208496094 0.6584892272949219 0.0 0.0 -1.0 -1.0 0.0 0.0 +191 0.20901250839233398 0.6645090579986572 -1.7583420230948832e-06 0.0 -1.0 -1.0 0.0 1.7583420230948832e-06 +188 0.15675926208496094 0.6645090579986572 0.0 0.0 -1.0 -1.0 0.0 0.0 +177 0.15675926208496094 0.6524696350097656 5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 -5.6163734996061976e-08 +192 0.20901250839233398 0.6584892272949219 3.5650049312607734e-07 0.0 -0.9999999403953552 -0.9999999403953552 0.0 -3.5650049312607734e-07 +176 0.15675926208496094 0.6584892272949219 0.0 0.0 -1.0 -1.0 0.0 0.0 +178 0.15675926208496094 0.6464498043060303 7.7205851312101e-07 -5.4479460942502556e-08 -1.0 -1.0 -4.206133190224129e-14 -7.7205851312101e-07 +193 0.20901250839233398 0.6524696350097656 7.7205851312101e-07 -5.447945738978888e-08 -0.9999999403953552 -0.9999999403953552 -4.206133190224129e-14 -7.7205851312101e-07 +177 0.15675926208496094 0.6524696350097656 7.7205851312101e-07 -5.4479464495216234e-08 -1.0 -1.0 -4.206133190224129e-14 -7.7205851312101e-07 +178 0.15675926208496094 0.6464498043060303 5.616375986505773e-08 0.0 -1.0 -1.0 0.0 -5.616375986505773e-08 +195 0.20901250839233398 0.6404300928115845 7.130008157218981e-07 0.0 -1.0 -1.0 0.0 -7.130008157218981e-07 +194 0.20901250839233398 0.6464498043060303 7.691645009799686e-07 0.0 -1.0 -1.0 0.0 -7.691645009799686e-07 +242 0.5815765857696533 0.6257305145263672 5.8245692713398967e-08 -1.0 7.642611308256164e-07 -4.4514918688025665e-14 7.642611308256164e-07 1.0 +223 0.5293235778808594 0.6197106838226318 5.824568916068529e-08 -1.0 7.642611308256164e-07 -4.4514918688025665e-14 7.642611308256164e-07 1.0 +224 0.5815765857696533 0.6197106838226318 5.824568916068529e-08 -1.0 7.642610739821976e-07 -4.4514915299893876e-14 7.642610739821976e-07 1.0 +215 0.9787142276763916 0.5815764665603638 1.0 -1.1500004148956577e-07 -4.2439644687419786e-08 -1.1500004148956577e-07 -1.0 4.880561066915442e-15 +210 0.9264612197875977 0.5293234586715698 1.0 -1.1500003438413842e-07 -4.243964113470611e-08 -1.1500003438413842e-07 -1.0 4.8805606433989686e-15 +211 0.9787142276763916 0.5293234586715698 1.0 -1.1500004859499313e-07 -4.2439644687419786e-08 -1.1500004859499313e-07 -1.0 4.880561066915442e-15 +211 0.0 0.44188594818115234 -0.9999999403953552 9.614556262249607e-08 -1.3757916950348967e-21 -1.8616230722224257e-14 -1.9362545344847604e-07 0.9999999403953552 +251 0.05225306749343872 0.48373889923095703 -1.0 9.614556262249607e-08 -1.3757916950348967e-21 -1.8616230722224257e-14 -1.9362546765933075e-07 1.0 +250 0.0 0.48373889923095703 -0.9999999403953552 9.614556262249607e-08 -1.3757915940607009e-21 -1.8616230722224257e-14 -1.9362545344847604e-07 0.9999999403953552 +213 0.8425226211547852 0.3853335976600647 -1.0 9.614556262249607e-08 7.490918392250023e-07 -7.490918392250023e-07 1.4732374609138787e-07 -1.0 +225 0.8947756886482239 0.5778578519821167 -1.0 9.614556262249607e-08 7.490918960684212e-07 -7.490918960684212e-07 1.4732374609138787e-07 -1.0 +221 0.8425226211547852 0.5778578519821167 -1.0 9.614556262249607e-08 7.490918392250023e-07 -7.490918392250023e-07 1.4732374609138787e-07 -1.0 +208 0.5293235778808594 0.8543732166290283 0.0 -1.0 0.0 -1.0437954500730484e-07 0.0 1.0 +225 0.5815765857696533 0.661848783493042 0.0 -0.9999999403953552 0.0 -1.0437953790187748e-07 0.0 0.9999999403953552 +212 0.5815765857696533 0.8543732166290283 0.0 -1.0 0.0 -1.0437954500730484e-07 0.0 1.0 +209 0.947028636932373 0.9360251426696777 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +212 0.9992815852165222 0.8837721347808838 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +213 0.9992815852165222 0.9360251426696777 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +210 0.5293235778808594 0.4271864891052246 -3.8725107742720866e-07 -0.9999999403953552 1.2317596029370209e-22 4.6163922429740337e-14 -1.775385503540806e-20 0.9999999403953552 +249 0.5815765261650085 0.4690394401550293 -3.8725107742720866e-07 -1.0 1.2317597291547657e-22 4.6163925817872126e-14 -1.775385503540806e-20 1.0 +251 0.5293235778808594 0.4690394401550293 -3.872510490054992e-07 -0.9999999403953552 1.2317596029370209e-22 4.6163922429740337e-14 -1.7753853419820926e-20 0.9999999403953552 +215 0.7381760478019714 0.8543732166290283 -3.8725107742720866e-07 -1.0 3.421229110938909e-21 -3.462294605746999e-14 9.986543457417034e-21 -1.0 +250 0.6859230995178223 0.8125201463699341 -3.872511058489181e-07 -1.0 3.421229110938909e-21 -3.462294605746999e-14 9.986545073004168e-21 -1.0 +248 0.7381760478019714 0.8125201463699341 -3.872511058489181e-07 -1.0 3.421229110938909e-21 -3.462294605746999e-14 9.986545073004168e-21 -1.0 +213 0.7381761074066162 0.42718660831451416 0.0 -0.9999999403953552 0.0 1.0437953790187748e-07 0.0 -0.9999999403953552 +227 0.6859230995178223 0.6197108626365662 0.0 -1.0 0.0 1.0437954500730484e-07 0.0 -1.0 +209 0.6859230995178223 0.42718660831451416 0.0 -0.9999999403953552 0.0 1.0437953790187748e-07 0.0 -0.9999999403953552 +227 0.0 0.6765482425689697 -1.0 9.614556972792343e-08 0.0 -1.2141017900237083e-14 -1.26277456047319e-07 1.0 +208 0.05225306749343872 0.869072675704956 -1.0 9.614556972792343e-08 0.0 -1.2141017900237083e-14 -1.26277456047319e-07 1.0 +209 0.0 0.869072675704956 -0.9999999403953552 9.614556262249607e-08 0.0 -1.2141017053204136e-14 -1.2627744183646428e-07 0.9999999403953552 +222 0.05225306749343872 0.6765482425689697 -0.9999999403953552 9.614556972792343e-08 0.0 0.0 -0.0 0.9999999403953552 +235 0.0 0.6705286502838135 -1.0 9.614557683335079e-08 0.0 0.0 -0.0 1.0 +219 0.05225306749343872 0.6705286502838135 -1.0 9.614557683335079e-08 0.0 0.0 -0.0 1.0 +227 0.6859230995178223 0.6197108626365662 0.0 -1.0 0.0 0.0 0.0 -1.0 +241 0.7381761074066162 0.6257306337356567 0.0 -1.0 0.0 0.0 0.0 -1.0 +235 0.6859230995178223 0.6257306337356567 0.0 -1.0 0.0 0.0 0.0 -1.0 +224 0.8947756886482239 0.6199959516525269 -1.0 9.614557683335079e-08 -3.743388106158818e-07 3.743388106158818e-07 -3.599101946376651e-14 -1.0 +236 0.8425226211547852 0.6139762997627258 -0.9999999403953552 9.614557683335079e-08 -3.743388106158818e-07 3.743388106158818e-07 -3.599101946376651e-14 -0.9999999403953552 +242 0.8947756886482239 0.613976240158081 -1.0 9.614558393877815e-08 -3.7433883903759124e-07 3.7433883903759124e-07 -3.59910228518983e-14 -1.0 +225 0.5815765857696533 0.661848783493042 0.0 -1.0 5.6163852235613376e-08 0.0 5.6163852235613376e-08 1.0 +219 0.5293235778808594 0.6558291912078857 0.0 -1.0 7.130018957468565e-07 0.0 7.130018957468565e-07 1.0 +247 0.5815765857696533 0.6558291912078857 0.0 -1.0 0.0 0.0 0.0 1.0 +220 0.8425226211547852 0.6199960112571716 -1.0 9.614562657134229e-08 8.598697563853576e-21 1.2927936919224746e-14 1.34462126766266e-07 -1.0 +249 0.8947756886482239 0.7706671953201294 -1.0 9.614562657134229e-08 8.598697563853576e-21 1.2927936919224746e-14 1.34462126766266e-07 -1.0 +248 0.8425226211547852 0.7706671953201294 -1.0 9.614562657134229e-08 8.598697563853576e-21 1.2927936919224746e-14 1.34462126766266e-07 -1.0 +242 0.5815765857696533 0.6257305145263672 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +228 0.5293235778808594 0.6317501068115234 0.0 -1.0 3.5650106156026595e-07 0.0 3.5650106156026595e-07 1.0 +229 0.5293235778808594 0.6257305145263672 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +244 0.5815765857696533 0.6377699375152588 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +228 0.5293235778808594 0.6317501068115234 0.0 -1.0 3.5650106156026595e-07 0.0 3.5650106156026595e-07 1.0 +243 0.5815765857696533 0.6317501068115234 0.0 -1.0 0.0 0.0 0.0 1.0 +245 0.5815765857696533 0.6437897682189941 0.0 -1.0 5.6163855788327055e-08 0.0 5.6163855788327055e-08 1.0 +216 0.5293235778808594 0.6377699375152588 0.0 -0.9999999403953552 3.565008341865905e-07 0.0 3.565008341865905e-07 0.9999999403953552 +244 0.5815765857696533 0.6377699375152588 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +246 0.5815765857696533 0.6498093605041504 5.8245692713398967e-08 -1.0 7.642914283678692e-07 -4.451668390468774e-14 7.642914283678692e-07 1.0 +217 0.5293235778808594 0.6437897682189941 5.824568916068529e-08 -1.0 7.642913715244504e-07 -4.4516680516555954e-14 7.642913715244504e-07 1.0 +245 0.5815765857696533 0.6437897682189941 5.824568916068529e-08 -1.0 7.642913715244504e-07 -4.4516680516555954e-14 7.642913715244504e-07 1.0 +246 0.5815765857696533 0.6498093605041504 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +219 0.5293235778808594 0.6558291912078857 0.0 -1.0 7.130018957468565e-07 0.0 7.130018957468565e-07 1.0 +218 0.5293235778808594 0.6498093605041504 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +225 0.8947756886482239 0.5778578519821167 -1.0 9.614557683335079e-08 7.691645009799686e-07 -7.691645009799686e-07 7.395176322439606e-14 -1.0 +241 0.8425226211547852 0.5838775634765625 -1.0 9.614558393877815e-08 7.691645009799686e-07 -7.691645009799686e-07 7.395176322439606e-14 -1.0 +221 0.8425226211547852 0.5778578519821167 -1.0 9.614557683335079e-08 7.691645009799686e-07 -7.691645009799686e-07 7.395176322439606e-14 -1.0 +246 0.8947756886482239 0.5898972749710083 -0.9999999403953552 9.614588947215452e-08 2.2478749468402167e-19 6.471624451609426e-14 6.73106910653587e-07 -0.9999999403953552 +241 0.8425226211547852 0.5838775634765625 -1.0 9.614590368300924e-08 2.2478749468402167e-19 6.471625129235783e-14 6.731069674970058e-07 -1.0 +247 0.8947756886482239 0.5838775634765625 -1.0 9.614589657758188e-08 2.2478749468402167e-19 6.471625129235783e-14 6.731069674970058e-07 -1.0 +245 0.8947756886482239 0.5959169864654541 -1.0 9.614557683335079e-08 -3.743388106158818e-07 3.743388106158818e-07 -3.599101946376651e-14 -1.0 +240 0.8425226211547852 0.5898973345756531 -0.9999999403953552 9.614557683335079e-08 -3.743388106158818e-07 3.743388106158818e-07 -3.599101946376651e-14 -0.9999999403953552 +246 0.8947756886482239 0.5898972749710083 -1.0 9.614558393877815e-08 -3.7433883903759124e-07 3.7433883903759124e-07 -3.59910228518983e-14 -1.0 +244 0.8947756886482239 0.6019367575645447 -1.0 9.614556972792343e-08 -7.408715418932843e-07 7.408715418932843e-07 -7.123151352615709e-14 -1.0 +239 0.8425226211547852 0.5959171056747437 -1.0 9.614556972792343e-08 -7.408715418932843e-07 7.408715418932843e-07 -7.123151352615709e-14 -1.0 +245 0.8947756886482239 0.5959169864654541 -1.0 9.614556972792343e-08 -7.408715418932843e-07 7.408715418932843e-07 -7.123151352615709e-14 -1.0 +244 0.8947756886482239 0.6019367575645447 -1.0 9.614558393877815e-08 -3.7152855725253175e-07 3.7152855725253175e-07 -3.5720826117987756e-14 -1.0 +237 0.8425226211547852 0.6079565286636353 -1.0 9.614558393877815e-08 -3.715285856742412e-07 3.715285856742412e-07 -3.5720829506119545e-14 -1.0 +238 0.8425226211547852 0.6019368171691895 -1.0 9.614558393877815e-08 -3.715285856742412e-07 3.715285856742412e-07 -3.5720829506119545e-14 -1.0 +242 0.8947756886482239 0.613976240158081 -0.9999999403953552 9.614588947215452e-08 0.0 -0.0 0.0 -0.9999999403953552 +237 0.8425226211547852 0.6079565286636353 -1.0 9.614590368300924e-08 0.0 -0.0 0.0 -1.0 +243 0.8947756886482239 0.6079565286636353 -1.0 9.614589657758188e-08 0.0 -0.0 0.0 -1.0 +230 0.6859230995178223 0.6558292508125305 -1.1756982587485254e-07 -1.0 3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +220 0.7381761074066162 0.6618490219116211 -1.1756982587485254e-07 -1.0 3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +226 0.6859230995178223 0.6618489623069763 -1.1756982587485254e-07 -1.0 3.6654066093433357e-07 -4.309411917482846e-14 -3.6654066093433357e-07 -1.0 +231 0.6859230995178223 0.6498095393180847 -1.1757044404703265e-07 -1.0 3.665406040909147e-07 -4.309434279152653e-14 -3.665406040909147e-07 -1.0 +236 0.7381761074066162 0.6558293104171753 -1.1757044404703265e-07 -1.0 3.6654063251262414e-07 -4.309434617965832e-14 -3.6654063251262414e-07 -1.0 +230 0.6859230995178223 0.6558292508125305 -1.1757045115246001e-07 -1.0 3.6654066093433357e-07 -4.309434956779011e-14 -3.6654066093433357e-07 -1.0 +232 0.6859230995178223 0.6437897682189941 0.0 -1.0 0.0 0.0 0.0 -1.0 +237 0.7381761074066162 0.6498095393180847 0.0 -1.0 0.0 0.0 0.0 -1.0 +231 0.6859230995178223 0.6498095393180847 0.0 -1.0 0.0 0.0 0.0 -1.0 +233 0.6859230995178223 0.6377700567245483 5.070666020401404e-08 -1.0 3.743394358934893e-07 1.8981500128200518e-14 -3.743394358934893e-07 -1.0 +238 0.7381761074066162 0.6437898278236389 5.0706656651300364e-08 -1.0 3.743394643151987e-07 1.8981501822266413e-14 -3.743394643151987e-07 -1.0 +232 0.6859230995178223 0.6437897682189941 5.0706653098586685e-08 -1.0 3.743394358934893e-07 1.8981500128200518e-14 -3.743394358934893e-07 -1.0 +234 0.6859230995178223 0.6317503452301025 -6.686307330028285e-08 -1.0 -3.9773561866240925e-07 2.6593825882756383e-14 3.9773561866240925e-07 -1.0 +239 0.7381761074066162 0.6377701163291931 -6.686307330028285e-08 -1.0 -3.9773561866240925e-07 2.6593825882756383e-14 3.9773561866240925e-07 -1.0 +233 0.6859230995178223 0.6377700567245483 -6.686307330028285e-08 -1.0 -3.9773561866240925e-07 2.6593825882756383e-14 3.9773561866240925e-07 -1.0 +235 0.6859230995178223 0.6257306337356567 -1.1757013140822892e-07 -1.0 -7.720749408690608e-07 9.077294986633774e-14 7.720749408690608e-07 -1.0 +240 0.7381761074066162 0.6317503452301025 -1.1757012430280156e-07 -1.0 -7.72074884025642e-07 9.077294309007417e-14 7.72074884025642e-07 -1.0 +234 0.6859230995178223 0.6317503452301025 -1.1757013851365627e-07 -1.0 -7.720749408690608e-07 9.077294986633774e-14 7.720749408690608e-07 -1.0 +229 0.05225306749343872 0.6404299736022949 -1.0 9.614557683335079e-08 -7.7205851312101e-07 -7.7205851312101e-07 7.423001015943731e-14 1.0 +226 0.0 0.6344101428985596 -0.9999999403953552 9.614557683335079e-08 -7.7205851312101e-07 -7.7205851312101e-07 7.423001015943731e-14 0.9999999403953552 +223 0.05225306749343872 0.6344101428985596 -1.0 9.614558393877815e-08 -7.7205851312101e-07 -7.7205851312101e-07 7.423001015943731e-14 1.0 +228 0.05225306749343872 0.6464495658874512 -0.9999999403953552 9.614575446903473e-08 -7.642901778126543e-07 -7.642902346560732e-07 -6.731023063366592e-07 0.9999999403953552 +230 0.0 0.6404299736022949 -1.0 9.614575446903473e-08 -7.642902346560732e-07 -7.64290291499492e-07 -6.731023631800781e-07 1.0 +229 0.05225306749343872 0.6404299736022949 -1.0 9.614575446903473e-08 -7.642902346560732e-07 -7.64290291499492e-07 -6.731023631800781e-07 1.0 +216 0.05225306749343872 0.6524693965911865 -1.0 9.614553420078664e-08 0.0 0.0 -0.0 1.0 +231 0.0 0.6464495658874512 -1.0 9.6145541306214e-08 0.0 0.0 -0.0 1.0 +228 0.05225306749343872 0.6464495658874512 -1.0 9.614553420078664e-08 0.0 0.0 -0.0 1.0 +217 0.05225306749343872 0.6584892272949219 -0.9999999403953552 9.614556972792343e-08 0.0 0.0 -0.0 0.9999999403953552 +232 0.0 0.6524693965911865 -1.0 9.614557683335079e-08 0.0 0.0 -0.0 1.0 +216 0.05225306749343872 0.6524693965911865 -1.0 9.614557683335079e-08 0.0 0.0 -0.0 1.0 +218 0.05225306749343872 0.6645088195800781 -1.0 9.614557683335079e-08 -7.720890948803572e-07 -7.720890948803572e-07 7.423295105783018e-14 1.0 +233 0.0 0.6584892272949219 -0.9999999403953552 9.614557683335079e-08 -7.720890380369383e-07 -7.720890380369383e-07 7.42329442815666e-14 0.9999999403953552 +217 0.05225306749343872 0.6584892272949219 -1.0 9.614558393877815e-08 -7.72089151723776e-07 -7.72089151723776e-07 7.423295783409375e-14 1.0 +219 0.05225306749343872 0.6705286502838135 -0.9999999403953552 9.614523577283762e-08 -7.642598802704015e-07 -7.642598802704015e-07 7.347995232024826e-14 0.9999999403953552 +234 0.0 0.6645088195800781 -1.0 9.614524287826498e-08 -7.642599371138203e-07 -7.642599371138203e-07 7.347995909651184e-14 1.0 +218 0.05225306749343872 0.6645088195800781 -1.0 9.614524998369234e-08 -7.642599371138203e-07 -7.642599371138203e-07 7.347995909651184e-14 1.0 +253 0.6859230995178223 0.4271864891052246 0.0 -1.0 -2.226019970717449e-21 2.311725199558457e-14 -2.226019970717449e-21 1.0 +249 0.5815765261650085 0.4690394401550293 0.0 -0.9999999403953552 -2.2260195668206656e-21 2.3117250301518677e-14 -2.2260195668206656e-21 0.9999999403953552 +214 0.5815765261650085 0.4271864891052246 0.0 -1.0 -2.2260195668206656e-21 2.311725199558457e-14 -2.2260195668206656e-21 1.0 +220 0.7381761074066162 0.6618490219116211 -3.716411943813225e-14 -1.0 3.715283014571469e-07 1.0003038397599084e-07 -3.715283014571469e-07 -1.0 +250 0.6859230995178223 0.8125201463699341 -3.716411943813225e-14 -1.0 3.715283298788563e-07 1.0003038397599084e-07 -3.715283298788563e-07 -1.0 +226 0.6859230995178223 0.6618489623069763 -3.716411943813225e-14 -1.0 3.715283298788563e-07 1.0003038397599084e-07 -3.715283298788563e-07 -1.0 +251 0.5293235778808594 0.4690394401550293 -1.9057445399539574e-07 -1.0 9.571738246449968e-07 -1.3337370319277397e-07 9.571738246449968e-07 1.0 +224 0.5815765857696533 0.6197106838226318 -1.9057445399539574e-07 -1.0 9.571739383318345e-07 -1.3337370319277397e-07 9.571739383318345e-07 1.0 +223 0.5293235778808594 0.6197106838226318 -1.9057443978454103e-07 -0.9999999403953552 9.57173710958159e-07 -1.3337368898191926e-07 9.57173710958159e-07 0.9999999403953552 +250 0.0 0.48373889923095703 -1.0 9.614552709535928e-08 -9.571724604029441e-07 -9.571724604029441e-07 -1.3446198465771886e-07 1.0 +223 0.05225306749343872 0.6344101428985596 -1.0 9.614552709535928e-08 -9.571722330292687e-07 -9.571722330292687e-07 -1.3446198465771886e-07 1.0 +226 0.0 0.6344101428985596 -1.0 9.614552709535928e-08 -9.571723467161064e-07 -9.571723467161064e-07 -1.3446198465771886e-07 1.0 +254 0.947028636932373 0.9882780313491821 0.0 0.0 -1.0 1.0 -1.9229125314268458e-07 0.0 +253 0.9888818264007568 0.9360250234603882 0.0 0.0 -0.9999999403953552 0.9999999403953552 -1.9229123893182987e-07 0.0 +252 0.9888818264007568 0.9882780313491821 0.0 0.0 -1.0 1.0 -1.9229125314268458e-07 0.0 +215 0.9787142276763916 0.5815764665603638 1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 -1.0 -0.0 +253 0.9264612197875977 0.6859229803085327 1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 -1.0 -0.0 +214 0.9264612197875977 0.5815764665603638 1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 -1.0 -0.0 +255 0.38457462191581726 0.973419189453125 -1.0 1.3041396304883102e-13 -6.771758762624813e-07 0.0 -1.0 -1.925850767747761e-07 +248 0.33232155442237854 0.869072675704956 -1.0 1.3041396304883102e-13 -6.771758194190625e-07 0.0 -1.0 -1.925850767747761e-07 +249 0.38457462191581726 0.869072675704956 -1.0 1.3041396304883102e-13 -6.771758762624813e-07 0.0 -1.0 -1.925850767747761e-07 +254 0.8425226211547852 0.8125201463699341 -9.696063330011384e-08 -1.0 -1.9258514782904967e-07 -4.444037978866729e-15 1.9258514782904967e-07 -1.0 +215 0.7381760478019714 0.8543732166290283 -9.696062619468648e-08 -0.9999999403953552 -1.9258514782904967e-07 -4.444036284800834e-15 1.9258514782904967e-07 -0.9999999403953552 +248 0.7381760478019714 0.8125201463699341 -9.696063330011384e-08 -1.0 -1.9258514782904967e-07 -4.444037978866729e-15 1.9258514782904967e-07 -1.0 +22 0.2646617889404297 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +151 0.0 0.41589272022247314 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +150 0.0 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +0 0.640097439289093 0.9651474952697754 0.0 1.0 0.0 0.0 0.0 1.0 +2 0.5293235778808594 0.9651474952697754 0.0 1.0 0.0 0.0 0.0 1.0 +3 0.5293235778808594 0.8543734550476074 0.0 1.0 0.0 0.0 0.0 1.0 +3 0.7508713603019714 0.8543734550476074 1.0 0.0 0.0 -0.0 0.0 1.0 +2 0.7508713603019714 0.9651474952697754 1.0 0.0 0.0 -0.0 0.0 1.0 +130 0.6400974988937378 0.9651474952697754 1.0 0.0 0.0 -0.0 0.0 1.0 +131 0.11077386140823364 0.9798465967178345 1.0 0.0 0.0 0.0 -1.0 0.0 +129 0.11077386140823364 0.8690727353096008 1.0 0.0 0.0 0.0 -1.0 0.0 +1 0.22154772281646729 0.8690727353096008 1.0 0.0 0.0 0.0 -1.0 0.0 +129 0.8616451621055603 0.8543734550476074 -1.0 0.0 0.0 0.0 -0.0 1.0 +128 0.8616451621055603 0.9651474952697754 -1.0 0.0 0.0 0.0 -0.0 1.0 +0 0.7508713006973267 0.9651474952697754 -1.0 0.0 0.0 0.0 -0.0 1.0 +4 0.926461398601532 0.44188594818115234 0.0 1.0 0.0 0.0 0.0 0.9999999403953552 +6 0.8947757482528687 0.44188594818115234 0.0 1.0 0.0 0.0 0.0 0.9999999403953552 +23 0.8947757482528687 0.41589272022247314 0.0 1.0 0.0 0.0 0.0 0.9999999403953552 +23 0.2646617889404297 0.41589272022247314 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +6 0.2646617889404297 0.4418860673904419 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +134 0.0 0.4418860673904419 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +135 0.9264613389968872 0.0 0.0 1.0 0.0 1.0 -0.0 0.0 +133 0.9581469297409058 0.0 0.0 1.0 0.0 1.0 -0.0 0.0 +5 0.9581469297409058 0.2646617889404297 0.0 1.0 0.0 1.0 -0.0 0.0 +152 0.5293235778808594 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +132 0.5293235778808594 0.4418860673904419 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +4 0.2646617889404297 0.4418860673904419 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +133 0.5293235778808594 0.0 -1.0 0.0 -4.172772207766684e-07 -4.1727719235495897e-07 0.0 0.9999999403953552 +167 0.5293235778808594 0.02599334716796875 -1.0 0.0 -2.3654229153180495e-07 -2.3654227732095023e-07 0.0 0.9999999403953552 +39 0.2646617889404297 0.0259932279586792 -1.0 0.0 -2.390778206518007e-07 -2.390777922300913e-07 0.0 0.9999999403953552 +167 0.5293235778808594 0.02599334716796875 -1.0 0.0 -2.3654229153180495e-07 -2.3654227732095023e-07 0.0 0.9999999403953552 +166 0.5293235778808594 0.05198657512664795 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +38 0.2646617889404297 0.05198657512664795 -1.0 0.0 -2.111740826649111e-07 -2.111740684540564e-07 0.0 0.9999999403953552 +166 0.5293235778808594 0.05198657512664795 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +165 0.5293235778808594 0.0779799222946167 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +37 0.2646617889404297 0.0779799222946167 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +165 0.5293235778808594 0.0779799222946167 -0.9999999403953552 0.0 -4.279766017134534e-07 -4.279766017134534e-07 0.0 0.9999999403953552 +164 0.5293235778808594 0.10397326946258545 -1.0 0.0 -2.422476086394454e-07 -2.422476086394454e-07 0.0 1.0 +36 0.2646617889404297 0.1039731502532959 -1.0 0.0 -2.394334899236128e-07 -2.394334899236128e-07 0.0 1.0 +164 0.5293235778808594 0.10397326946258545 -1.0 0.0 -2.422476086394454e-07 -2.422476086394454e-07 0.0 1.0 +163 0.5293235778808594 0.12996649742126465 -1.0 0.0 0.0 0.0 -0.0 1.0 +35 0.2646617889404297 0.12996649742126465 -0.9999999403953552 0.0 -4.2234839270349767e-07 -4.2234839270349767e-07 0.0 0.9999999403953552 +163 0.5293235778808594 0.12996649742126465 -1.0 0.0 -4.172772207766684e-07 -4.1727719235495897e-07 0.0 0.9999999403953552 +162 0.5293235778808594 0.1559598445892334 -1.0 0.0 -4.450123185506527e-07 -4.450122901289433e-07 0.0 0.9999999403953552 +34 0.2646617889404297 0.15595972537994385 -1.0 0.0 -2.773514751197581e-08 -2.773514573561897e-08 0.0 0.9999999403953552 +162 0.5293235778808594 0.1559598445892334 -0.9999999403953552 0.0 -2.8072212998608848e-08 -2.8072212998608848e-08 0.0 0.9999999403953552 +161 0.5293235778808594 0.1819530725479126 -1.0 0.0 0.0 0.0 -0.0 1.0 +33 0.2646617889404297 0.1819530725479126 -1.0 0.0 -2.111741679300394e-07 -2.111741679300394e-07 0.0 1.0 +161 0.5293235778808594 0.1819530725479126 -1.0 0.0 0.0 0.0 -0.0 1.0 +160 0.5293235778808594 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +32 0.2646617889404297 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +160 0.5293235778808594 0.20794641971588135 -1.0 0.0 0.0 0.0 -0.0 1.0 +159 0.5293235778808594 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +31 0.2646617889404297 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +159 0.5293235778808594 0.2339397668838501 -1.0 0.0 0.0 0.0 -0.0 1.0 +158 0.5293235778808594 0.2599329948425293 -1.0 0.0 0.0 0.0 -0.0 1.0 +30 0.2646617889404297 0.2599329948425293 -0.9999999403953552 0.0 0.0 0.0 -0.0 0.9999999403953552 +158 0.5293235778808594 0.2599329948425293 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +157 0.5293235778808594 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +29 0.2646617889404297 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +157 0.5293235778808594 0.28592634201049805 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +156 0.5293235778808594 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +28 0.2646617889404297 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +156 0.5293235778808594 0.31191956996917725 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +155 0.5293235778808594 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +27 0.2646617889404297 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +155 0.5293235778808594 0.337912917137146 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +154 0.5293235778808594 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +26 0.2646617889404297 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +154 0.5293235778808594 0.3639061450958252 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +153 0.5293235778808594 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +25 0.2646617889404297 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +39 0.9264614582061768 0.02599334716796875 0.0 1.0 -1.3869561144019826e-07 -0.0 1.3869561144019826e-07 1.0 +8 0.8947758078575134 0.02599334716796875 0.0 1.0 -3.171091407239146e-07 -0.0 3.171091407239146e-07 1.0 +7 0.8947758078575134 0.0 0.0 1.0 -1.784135861271352e-07 -0.0 1.784135861271352e-07 1.0 +38 0.926461398601532 0.05198657512664795 0.0 1.0 -3.1710919756733347e-07 -0.0 3.1710919756733347e-07 1.0 +9 0.8947758078575134 0.05198657512664795 0.0 1.0 -3.171092259890429e-07 -0.0 3.171092259890429e-07 1.0 +8 0.8947758078575134 0.02599334716796875 0.0 1.0 -3.1710919756733347e-07 -0.0 3.1710919756733347e-07 1.0 +37 0.926461398601532 0.0779799222946167 0.0 1.0 0.0 0.0 0.0 1.0 +10 0.8947758078575134 0.0779799222946167 0.0 1.0 0.0 0.0 0.0 1.0 +9 0.8947758078575134 0.05198657512664795 0.0 1.0 0.0 0.0 0.0 1.0 +37 0.926461398601532 0.0779799222946167 2.2620818640461948e-07 1.0 5.718601983062399e-07 -1.2935945446334446e-13 -5.718601983062399e-07 1.0 +36 0.926461398601532 0.1039731502532959 2.2620818640461948e-07 1.0 5.718601983062399e-07 -1.2935945446334446e-13 -5.718601983062399e-07 1.0 +11 0.8947758078575134 0.1039731502532959 2.2620818640461948e-07 1.0 5.718601983062399e-07 -1.2935945446334446e-13 -5.718601983062399e-07 1.0 +36 0.926461398601532 0.1039731502532959 -6.172037103624461e-08 1.0 1.2390245274218614e-06 7.647305504772037e-14 -1.2390245274218614e-06 1.0 +35 0.926461398601532 0.12996649742126465 -6.172037103624461e-08 1.0 1.2390246411086991e-06 7.647306182398395e-14 -1.2390246411086991e-06 1.0 +12 0.8947758078575134 0.12996649742126465 -6.172037103624461e-08 1.0 1.2390246411086991e-06 7.647306182398395e-14 -1.2390246411086991e-06 1.0 +35 0.926461398601532 0.12996649742126465 -6.172037103624461e-08 1.0 -2.4780492822173983e-06 -1.529461236479679e-13 2.4780492822173983e-06 1.0 +34 0.926461398601532 0.1559598445892334 -6.172037103624461e-08 1.0 -2.4780492822173983e-06 -1.529461236479679e-13 2.4780492822173983e-06 1.0 +13 0.8947758078575134 0.15595972537994385 -6.172037103624461e-08 1.0 -2.4780492822173983e-06 -1.529461236479679e-13 2.4780492822173983e-06 1.0 +34 0.926461398601532 0.1559598445892334 -6.172024313855218e-08 1.0 1.239030439137423e-06 7.647325833562771e-14 -1.239030439137423e-06 1.0 +33 0.926461398601532 0.1819530725479126 -6.172024313855218e-08 1.0 1.239030439137423e-06 7.647325833562771e-14 -1.239030439137423e-06 1.0 +14 0.8947758078575134 0.1819530725479126 -6.172024313855218e-08 1.0 1.239030439137423e-06 7.647325833562771e-14 -1.239030439137423e-06 1.0 +33 0.926461398601532 0.1819530725479126 -6.172024313855218e-08 1.0 -2.5733588699949905e-06 -1.588283405620436e-13 2.5733588699949905e-06 1.0 +32 0.926461398601532 0.20794641971588135 -6.172024313855218e-08 1.0 -2.573358642621315e-06 -1.5882832700951643e-13 2.573358642621315e-06 1.0 +15 0.8947758078575134 0.2079463005065918 -6.172024313855218e-08 1.0 -2.5733588699949905e-06 -1.588283405620436e-13 2.5733588699949905e-06 1.0 +32 0.926461398601532 0.20794641971588135 1.644879432660673e-07 1.0 1.9062008504988626e-06 -3.135470669993895e-13 -1.9062008504988626e-06 1.0 +31 0.926461398601532 0.23393964767456055 1.644879432660673e-07 1.0 1.9062008504988626e-06 -3.135470669993895e-13 -1.9062008504988626e-06 1.0 +16 0.8947758078575134 0.23393964767456055 1.644879290552126e-07 0.9999999403953552 1.9062008504988626e-06 -3.135470669993895e-13 -1.9062008504988626e-06 0.9999999403953552 +31 0.926461398601532 0.23393964767456055 3.9069516333256615e-07 1.0 2.5733588699949905e-06 -1.005398889142306e-12 -2.5733588699949905e-06 1.0 +30 0.926461398601532 0.2599329948425293 3.9069516333256615e-07 1.0 2.5733588699949905e-06 -1.005398889142306e-12 -2.5733588699949905e-06 1.0 +17 0.8947758078575134 0.2599329948425293 3.9069516333256615e-07 1.0 2.5733588699949905e-06 -1.005398889142306e-12 -2.5733588699949905e-06 1.0 +30 0.926461398601532 0.2599329948425293 -1.2344074207248923e-07 1.0 -1.2390246411086991e-06 -1.529461236479679e-13 1.2390246411086991e-06 1.0 +29 0.926461398601532 0.28592634201049805 -1.2344074207248923e-07 1.0 -1.2390247547955369e-06 -1.5294613720049505e-13 1.2390247547955369e-06 1.0 +18 0.8947758078575134 0.2859262228012085 -1.2344075628334394e-07 1.0 -1.2390246411086991e-06 -1.529461236479679e-13 1.2390246411086991e-06 1.0 +29 0.926461398601532 0.28592634201049805 -1.2344048627710436e-07 1.0 -1.239030439137423e-06 -1.5294651667125542e-13 1.239030439137423e-06 1.0 +28 0.926461398601532 0.31191956996917725 -1.2344048627710436e-07 1.0 -1.2390305528242607e-06 -1.5294653022378257e-13 1.2390305528242607e-06 1.0 +19 0.8947758078575134 0.3119194507598877 -1.2344048627710436e-07 1.0 -1.239030439137423e-06 -1.5294651667125542e-13 1.239030439137423e-06 1.0 +28 0.926461398601532 0.31191956996917725 -1.2344074207248923e-07 1.0 2.573370920799789e-06 3.1765882242337784e-13 -2.573370920799789e-06 1.0 +27 0.926461398601532 0.33791279792785645 -1.2344074207248923e-07 1.0 2.573370920799789e-06 3.1765882242337784e-13 -2.573370920799789e-06 1.0 +20 0.8947758078575134 0.33791279792785645 -1.2344075628334394e-07 1.0 2.573370920799789e-06 3.1765882242337784e-13 -2.573370920799789e-06 1.0 +27 0.926461398601532 0.33791279792785645 -1.2344021627086477e-07 1.0 2.4780492822173983e-06 3.058909733583831e-13 -2.478049054843723e-06 0.9999999403953552 +26 0.926461398601532 0.3639061450958252 -1.2344021627086477e-07 1.0 2.4780495095910737e-06 3.058910004634374e-13 -2.4780492822173983e-06 0.9999999403953552 +21 0.8947757482528687 0.3639061450958252 -1.2344021627086477e-07 1.0 2.4780492822173983e-06 3.058909733583831e-13 -2.478049054843723e-06 0.9999999403953552 +26 0.926461398601532 0.3639061450958252 -6.172037103624461e-08 1.0 1.2390246411086991e-06 7.647306182398395e-14 -1.2390246411086991e-06 1.0 +25 0.926461398601532 0.38989949226379395 -6.172037103624461e-08 1.0 1.2390246411086991e-06 7.647306182398395e-14 -1.2390246411086991e-06 1.0 +22 0.8947757482528687 0.38989949226379395 -6.172037103624461e-08 1.0 1.2390246411086991e-06 7.647306182398395e-14 -1.2390246411086991e-06 1.0 +25 0.926461398601532 0.38989949226379395 0.0 1.0 0.0 0.0 0.0 1.0 +24 0.926461398601532 0.41589272022247314 0.0 1.0 0.0 0.0 0.0 1.0 +23 0.8947757482528687 0.41589272022247314 0.0 1.0 0.0 0.0 0.0 1.0 +56 0.316914826631546 0.6344103813171387 7.705211828579195e-07 1.0 0.0 -1.0 7.705211828579195e-07 0.0 +55 0.3691678047180176 0.6344103813171387 7.042787046884769e-07 1.0 0.0 -1.0 7.042787046884769e-07 0.0 +61 0.3691678047180176 0.6404299736022949 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +42 0.8947755694389343 0.8229203224182129 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +46 0.8425226211547852 0.8229203224182129 0.0 1.0 0.0 0.0 0.0 1.0 +47 0.8425226211547852 0.7706670761108398 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +55 0.20901203155517578 0.6344103813171387 0.0 0.0 -1.0 -1.0 0.0 0.0 +42 0.20901203155517578 0.44188594818115234 0.0 0.0 -1.0 -1.0 0.0 0.0 +43 0.26126527786254883 0.44188594818115234 0.0 0.0 -1.0 -1.0 0.0 0.0 +57 0.05225324630737305 0.6344103813171387 0.0 0.0 -1.0 1.0 0.0 0.0 +44 0.05225324630737305 0.4418860673904419 0.0 0.0 -1.0 1.0 0.0 0.0 +45 0.1045064926147461 0.4418860673904419 0.0 0.0 -1.0 1.0 0.0 0.0 +40 0.3691678047180176 0.869072437286377 1.6851643636073277e-07 1.0 0.0 -1.0 1.6851643636073277e-07 0.0 +44 0.316914826631546 0.869072437286377 0.0 1.0 0.0 -1.0 0.0 0.0 +57 0.316914826631546 0.6765484809875488 7.97253221662686e-07 1.0 0.0 -1.0 7.97253221662686e-07 0.0 +44 0.4890805780887604 0.9213261604309082 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +40 0.4368276000022888 0.9213261604309082 0.0 -1.0 0.0 0.0 0.0 1.0 +41 0.4368276000022888 0.8690729141235352 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +55 0.3691678047180176 0.6344103813171387 7.042787046884769e-07 1.0 0.0 -1.0 7.042787046884769e-07 0.0 +56 0.316914826631546 0.6344103813171387 7.705211828579195e-07 1.0 0.0 -1.0 7.705211828579195e-07 0.0 +46 0.316914826631546 0.44188594818115234 1.29773908952302e-07 1.0 0.0 -1.0 1.29773908952302e-07 0.0 +52 0.3691677749156952 0.6765483617782593 -7.042787046884769e-07 1.0 0.0 1.0 7.042787046884769e-07 0.0 +58 0.42142075300216675 0.6765483617782593 -7.705211260145006e-07 1.0 0.0 1.0 7.705211260145006e-07 0.0 +43 0.42142075300216675 0.8690727949142456 -1.29773908952302e-07 1.0 0.0 1.0 1.29773908952302e-07 0.0 +45 0.3691677749156952 0.4418860673904419 2.52774214004603e-07 1.0 0.0 1.0 -2.52774214004603e-07 0.0 +41 0.42142075300216675 0.4418860673904419 0.0 1.0 0.0 1.0 -0.0 0.0 +59 0.42142075300216675 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 1.0 -1.3791679975838633e-06 0.0 +40 0.20901203155517578 0.869072437286377 -9.987907105823979e-07 4.038907874814868e-08 -1.0 -1.0 -4.034023549231991e-14 9.987907105823979e-07 +54 0.20901203155517578 0.6765484809875488 -9.987907105823979e-07 4.038907874814868e-08 -1.0 -1.0 -4.034023549231991e-14 9.987907105823979e-07 +59 0.26126527786254883 0.6765484809875488 -9.987907105823979e-07 4.038907874814868e-08 -1.0 -1.0 -4.034023549231991e-14 9.987907105823979e-07 +67 0.26126527786254883 0.6705284118652344 -7.642297532584053e-07 -2.965885848027483e-08 -0.9999999403953552 -0.9999999403953552 2.266618154018324e-14 7.642297532584053e-07 +59 0.26126527786254883 0.6765484809875488 -7.642297532584053e-07 -2.965885848027483e-08 -1.0 -1.0 2.266618154018324e-14 7.642297532584053e-07 +54 0.20901203155517578 0.6765484809875488 -7.642296964149864e-07 -2.965885848027483e-08 -1.0 -1.0 2.2666179846117344e-14 7.642296964149864e-07 +67 0.42142075300216675 0.6404300928115845 7.012266109995835e-07 1.0 0.0 1.0 -7.012266109995835e-07 0.0 +73 0.3691677749156952 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +53 0.3691677749156952 0.6344103813171387 8.043285788517096e-07 1.0 0.0 1.0 -8.043285788517096e-07 0.0 +68 0.1045064926147461 0.6705288887023926 7.720890948803572e-07 -5.4493000334332464e-08 -1.0 1.0 4.2073451249650604e-14 7.720890948803572e-07 +52 0.1045064926147461 0.6765484809875488 7.72089151723776e-07 -5.449300388704614e-08 -1.0 1.0 4.207345463778239e-14 7.72089151723776e-07 +56 0.05225324630737305 0.6765484809875488 7.720890380369383e-07 -5.4492996781618785e-08 -0.9999999403953552 0.9999999403953552 4.2073447861518815e-14 7.720890380369383e-07 +79 0.316914826631546 0.6705284118652344 3.542138244938542e-07 1.0 0.0 -1.0 3.542138244938542e-07 0.0 +51 0.3691678047180176 0.6705284118652344 3.565011184036848e-07 1.0 0.0 -1.0 3.565011184036848e-07 0.0 +54 0.3691678047180176 0.6765484809875488 5.272975158732152e-07 1.0 0.0 -1.0 5.272975158732152e-07 0.0 +46 0.05225324630737305 0.869072675704956 7.490921234420966e-07 4.379632656537069e-08 -1.0 1.0 -3.280748001282911e-14 7.490921234420966e-07 +56 0.05225324630737305 0.6765484809875488 7.490921802855155e-07 4.379632301265701e-08 -1.0 1.0 -3.28074834009609e-14 7.490921802855155e-07 +52 0.1045064926147461 0.6765484809875488 7.490921234420966e-07 4.379632301265701e-08 -1.0 1.0 -3.280748001282911e-14 7.490921234420966e-07 +74 0.316914826631546 0.6404299736022949 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +61 0.3691678047180176 0.6404299736022949 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +60 0.3691678047180176 0.6464495658874512 3.5650114682539424e-07 1.0 0.0 -1.0 3.5650114682539424e-07 0.0 +60 0.3691678047180176 0.6464495658874512 3.5650114682539424e-07 1.0 0.0 -1.0 3.5650114682539424e-07 0.0 +48 0.3691678047180176 0.6524691581726074 0.0 1.0 0.0 -1.0 0.0 0.0 +76 0.316914826631546 0.6524691581726074 3.5421388133727305e-07 1.0 0.0 -1.0 3.5421388133727305e-07 0.0 +76 0.316914826631546 0.6524691581726074 3.5421388133727305e-07 1.0 0.0 -1.0 3.5421388133727305e-07 0.0 +48 0.3691678047180176 0.6524691581726074 0.0 1.0 0.0 -1.0 0.0 0.0 +49 0.3691678047180176 0.6584892272949219 4.1248435422858165e-07 1.0 0.0 -1.0 4.1248435422858165e-07 0.0 +77 0.316914826631546 0.6584892272949219 7.680537237320095e-07 1.0 0.0 -1.0 7.680537237320095e-07 0.0 +49 0.3691678047180176 0.6584892272949219 4.1248435422858165e-07 1.0 0.0 -1.0 4.1248435422858165e-07 0.0 +50 0.3691678047180176 0.6645088195800781 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +78 0.316914826631546 0.6645088195800781 4.1412678797314584e-07 0.9999999403953552 0.0 -0.9999999403953552 4.1412678797314584e-07 0.0 +50 0.3691678047180176 0.6645088195800781 7.692725034758041e-07 1.0 0.0 -1.0 7.692725034758041e-07 0.0 +51 0.3691678047180176 0.6705284118652344 3.565011184036848e-07 1.0 0.0 -1.0 3.565011184036848e-07 0.0 +53 0.1045064926147461 0.6344103813171387 5.6163734996061976e-08 0.0 -1.0 1.0 0.0 5.6163734996061976e-08 +73 0.1045064926147461 0.6404300928115845 0.0 0.0 -1.0 1.0 0.0 0.0 +79 0.05225324630737305 0.6404300928115845 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +73 0.1045064926147461 0.6404300928115845 7.720737471572647e-07 2.9645050858562172e-08 -0.9999999403953552 0.9999999403953552 -2.2888166852801962e-14 7.720737471572647e-07 +72 0.1045064926147461 0.6464498043060303 7.720738040006836e-07 2.964505441127585e-08 -1.0 1.0 -2.2888168546867857e-14 7.720738040006836e-07 +78 0.05225324630737305 0.6464498043060303 7.720738040006836e-07 2.964505263491901e-08 -1.0 1.0 -2.2888168546867857e-14 7.720738040006836e-07 +72 0.1045064926147461 0.6464498043060303 1.5363184502348304e-06 -2.484762617882552e-08 -1.0 1.0 3.81738674145541e-14 1.5363184502348304e-06 +71 0.1045064926147461 0.6524696350097656 1.5363184502348304e-06 -2.484762617882552e-08 -1.0 1.0 3.81738674145541e-14 1.5363184502348304e-06 +77 0.05225324630737305 0.6524696350097656 1.5363183365479927e-06 -2.484762617882552e-08 -1.0 1.0 3.817386402642231e-14 1.5363183365479927e-06 +71 0.1045064926147461 0.6524696350097656 7.720890948803572e-07 -5.449358297937579e-08 -1.0 1.0 4.207390187117854e-14 7.720890948803572e-07 +70 0.1045064926147461 0.6584892272949219 7.72089151723776e-07 -5.449358297937579e-08 -1.0 1.0 4.207390525931033e-14 7.72089151723776e-07 +76 0.05225324630737305 0.6584892272949219 7.720890380369383e-07 -5.449358297937579e-08 -0.9999999403953552 0.9999999403953552 4.2073898483046754e-14 7.720890380369383e-07 +70 0.1045064926147461 0.6584892272949219 5.6163734996061976e-08 0.0 -1.0 1.0 0.0 5.6163734996061976e-08 +69 0.1045064926147461 0.6645090579986572 0.0 0.0 -1.0 1.0 0.0 0.0 +75 0.05225324630737305 0.6645090579986572 3.565005499694962e-07 0.0 -1.0 1.0 0.0 3.565005499694962e-07 +69 0.1045064926147461 0.6645090579986572 -3.7979039007041138e-06 2.964473466704476e-08 -0.9999999403953552 0.9999999403953552 1.1258785651826683e-13 -3.7979039007041138e-06 +68 0.1045064926147461 0.6705288887023926 -3.7979039007041138e-06 2.964473466704476e-08 -1.0 1.0 1.1258785651826683e-13 -3.7979039007041138e-06 +74 0.05225324630737305 0.6705286502838135 -3.7979039007041138e-06 2.964473289068792e-08 -1.0 1.0 1.1258785651826683e-13 -3.7979039007041138e-06 +58 0.42142075300216675 0.6765483617782593 -7.705211260145006e-07 1.0 0.0 1.0 7.705211260145006e-07 0.0 +52 0.3691677749156952 0.6765483617782593 -7.042787046884769e-07 1.0 0.0 1.0 7.042787046884769e-07 0.0 +68 0.3691677749156952 0.670528769493103 -7.692725034758041e-07 1.0 0.0 1.0 7.692725034758041e-07 0.0 +62 0.42142075300216675 0.670528769493103 -4.1412678797314584e-07 0.9999999403953552 0.0 0.9999999403953552 4.1412678797314584e-07 0.0 +68 0.3691677749156952 0.670528769493103 -7.692725034758041e-07 1.0 0.0 1.0 7.692725034758041e-07 0.0 +69 0.3691677749156952 0.6645089387893677 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +63 0.42142075300216675 0.6645089387893677 -3.5424190514277143e-07 1.0 0.0 1.0 3.5424190514277143e-07 0.0 +69 0.3691677749156952 0.6645089387893677 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +70 0.3691677749156952 0.6584893465042114 -4.124865427002078e-07 1.0 0.0 1.0 4.124865427002078e-07 0.0 +64 0.42142075300216675 0.6584893465042114 -1.122297817346407e-06 1.0 0.0 1.0 1.122297817346407e-06 0.0 +70 0.3691677749156952 0.6584893465042114 -4.124865427002078e-07 1.0 0.0 1.0 4.124865427002078e-07 0.0 +71 0.3691677749156952 0.6524695158004761 -1.1817567155958386e-06 0.9999999403953552 0.0 0.9999999403953552 1.1817567155958386e-06 0.0 +65 0.42142075300216675 0.6524695158004761 -1.1785585911638918e-06 0.9999999403953552 0.0 0.9999999403953552 1.1785585911638918e-06 0.0 +71 0.3691677749156952 0.6524695158004761 -1.1817567155958386e-06 0.9999999403953552 0.0 0.9999999403953552 1.1817567155958386e-06 0.0 +72 0.3691677749156952 0.6464498043060303 -1.1254884384470643e-06 1.0 0.0 1.0 1.1254884384470643e-06 0.0 +66 0.42142075300216675 0.6464498043060303 -4.102198261080048e-07 0.9999999403953552 0.0 0.9999999403953552 4.102198261080048e-07 0.0 +72 0.3691677749156952 0.6464498043060303 -1.1254884384470643e-06 1.0 0.0 1.0 1.1254884384470643e-06 0.0 +73 0.3691677749156952 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 1.0 3.565011184036848e-07 0.0 +58 0.26126527786254883 0.6344103813171387 -7.720890948803572e-07 5.4479460942502556e-08 -1.0 -1.0 -4.2062998863081486e-14 7.720890948803572e-07 +62 0.26126527786254883 0.6404299736022949 -7.72089151723776e-07 5.4479464495216234e-08 -1.0 -1.0 -4.2063002251213275e-14 7.72089151723776e-07 +61 0.20901203155517578 0.6404299736022949 -7.720890380369383e-07 5.447945738978888e-08 -0.9999999403953552 -0.9999999403953552 -4.2062995474949696e-14 7.720890380369383e-07 +62 0.26126527786254883 0.6404299736022949 -5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 5.6163734996061976e-08 +63 0.26126527786254883 0.6464495658874512 0.0 0.0 -1.0 -1.0 0.0 0.0 +60 0.20901203155517578 0.6464495658874512 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +63 0.26126527786254883 0.6464495658874512 0.0 0.0 -1.0 -1.0 0.0 0.0 +64 0.26126527786254883 0.6524691581726074 0.0 0.0 -1.0 -1.0 0.0 0.0 +48 0.20901203155517578 0.6524691581726074 0.0 0.0 -1.0 -1.0 0.0 0.0 +64 0.26126527786254883 0.6524691581726074 -7.642297532584053e-07 -2.965885848027483e-08 -0.9999999403953552 -0.9999999403953552 2.266618154018324e-14 7.642297532584053e-07 +65 0.26126527786254883 0.6584892272949219 -7.642297532584053e-07 -2.965885848027483e-08 -1.0 -1.0 2.266618154018324e-14 7.642297532584053e-07 +49 0.20901203155517578 0.6584892272949219 -7.642296964149864e-07 -2.965885848027483e-08 -1.0 -1.0 2.2666179846117344e-14 7.642296964149864e-07 +65 0.26126527786254883 0.6584892272949219 -7.720890948803572e-07 5.4478874744745553e-08 -1.0 -1.0 -4.206254485342176e-14 7.720890948803572e-07 +66 0.26126527786254883 0.6645088195800781 -7.72089151723776e-07 5.4478874744745553e-08 -1.0 -1.0 -4.2062548241553546e-14 7.72089151723776e-07 +50 0.20901203155517578 0.6645088195800781 -7.720890380369383e-07 5.4478874744745553e-08 -0.9999999403953552 -0.9999999403953552 -4.206254146528997e-14 7.720890380369383e-07 +66 0.26126527786254883 0.6645088195800781 -5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 5.6163734996061976e-08 +67 0.26126527786254883 0.6705284118652344 0.0 0.0 -1.0 -1.0 0.0 0.0 +51 0.20901203155517578 0.6705284118652344 -3.565005499694962e-07 0.0 -1.0 -1.0 0.0 3.565005499694962e-07 +95 0.6859229803085327 0.19252419471740723 -5.8245692713398967e-08 1.0 -7.642611308256164e-07 -4.4514918688025665e-14 7.642611308256164e-07 1.0 +101 0.6859229803085327 0.19854402542114258 -5.824568916068529e-08 1.0 -7.642610739821976e-07 -4.4514915299893876e-14 7.642610739821976e-07 1.0 +114 0.6336699724197388 0.19854402542114258 -5.824568916068529e-08 1.0 -7.642611308256164e-07 -4.4514918688025665e-14 7.642611308256164e-07 1.0 +82 0.9264613389968872 0.8425225019454956 -1.0 -1.1500004148956577e-07 4.2439644687419786e-08 -1.1500004148956577e-07 1.0 4.880561066915442e-15 +86 0.9264613389968872 0.7902694940567017 -1.0 -1.1500004859499313e-07 4.2439644687419786e-08 -1.1500004859499313e-07 1.0 4.880561066915442e-15 +87 0.9787143468856812 0.7902694940567017 -1.0 -1.1500003438413842e-07 4.243964113470611e-08 -1.1500003438413842e-07 1.0 4.8805606433989686e-15 +123 0.15675920248031616 0.8272196054458618 0.9999999403953552 9.6145541306214e-08 -1.3757913921123091e-21 -9.30811197298034e-15 9.681270540795595e-08 -0.9999999403953552 +82 0.15675920248031616 0.869072675704956 1.0 9.614554841164136e-08 -1.3757913921123091e-21 -9.308112820013287e-15 9.68127125133833e-08 -1.0 +83 0.10450613498687744 0.869072675704956 1.0 9.6145541306214e-08 -1.3757913921123091e-21 -9.30811197298034e-15 9.68127125133833e-08 -1.0 +97 0.8947756886482239 0.1928093433380127 1.0 9.6145541306214e-08 -3.589020355593947e-21 1.2141015359138242e-14 -1.2627742762560956e-07 1.0 +84 0.8947756886482239 0.3853335380554199 1.0 9.614554841164136e-08 -3.589020355593947e-21 1.2141016206171189e-14 -1.2627742762560956e-07 1.0 +85 0.8425226211547852 0.3853335380554199 1.0 9.6145541306214e-08 -3.589020355593947e-21 1.2141015359138242e-14 -1.2627742762560956e-07 1.0 +80 0.6859229803085327 0.4271864891052246 4.762600361828129e-13 1.0 4.562771664495813e-06 1.0437954500730484e-07 -4.562771664495813e-06 1.0 +84 0.6336699724197388 0.4271867275238037 4.762600361828129e-13 1.0 4.562771664495813e-06 1.0437954500730484e-07 -4.562771664495813e-06 1.0 +97 0.6336699724197388 0.23466229438781738 4.762600361828129e-13 0.9999999403953552 4.562771664495813e-06 1.0437953790187748e-07 -4.562771664495813e-06 0.9999999403953552 +84 0.9470287561416626 0.9882781505584717 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +80 0.8947757482528687 0.9882781505584717 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +81 0.8947757482528687 0.936025083065033 0.0 -1.0 0.0 1.0 0.0 2.1274102479651447e-08 +121 0.6336699724197388 0.04185295104980469 -3.872516742831067e-07 0.9999999403953552 -1.232037029540169e-22 -4.6163993580507906e-14 -1.7753882500389336e-20 0.9999999403953552 +86 0.6336699724197388 0.0 -3.872516742831067e-07 0.9999999403953552 -1.2320371557579138e-22 -4.6163993580507906e-14 -1.7753882500389336e-20 0.9999999403953552 +82 0.6859229803085327 0.0 -3.872516742831067e-07 1.0 -1.2320371557579138e-22 -4.6163996968639695e-14 -1.7753882500389336e-20 1.0 +122 0.8425227403640747 0.3853335380554199 -3.872516742831067e-07 1.0 3.2035323401683553e-16 -1.2003650340375316e-07 -4.616398341611254e-14 -1.0 +83 0.8425227403640747 0.42718660831451416 -3.872516742831067e-07 1.0 3.2035323401683553e-16 -1.2003650340375316e-07 -4.616398341611254e-14 -1.0 +87 0.7902697324752808 0.42718660831451416 -3.872517027048161e-07 1.0 3.2035323401683553e-16 -1.2003650340375316e-07 -4.616398680424433e-14 -1.0 +81 0.8425226211547852 0.0 -6.155340059876835e-08 1.0 -4.993952984477801e-07 -1.0437951658559541e-07 -4.993952984477801e-07 -1.0 +99 0.8425226211547852 0.192524254322052 -6.155340059876835e-08 1.0 -4.993952984477801e-07 -1.0437951658559541e-07 -4.993952984477801e-07 -1.0 +93 0.7902697324752808 0.19252431392669678 -6.155340059876835e-08 1.0 -4.993952984477801e-07 -1.0437951658559541e-07 -4.993952984477801e-07 -1.0 +80 0.15675920248031616 0.4418860673904419 1.0 9.614539209223949e-08 4.993943889530783e-07 4.993943889530783e-07 1.262774702581737e-07 -1.0 +94 0.15675920248031616 0.6344103813171387 1.0 9.614539209223949e-08 4.993943889530783e-07 4.993943889530783e-07 1.262774702581737e-07 -1.0 +99 0.10450613498687744 0.6344103217124939 1.0 9.614539919766685e-08 4.993943889530783e-07 4.993943889530783e-07 1.262774702581737e-07 -1.0 +107 0.10450613498687744 0.6404300928115845 0.9999999403953552 9.6145541306214e-08 3.6653642609962844e-07 3.6653642609962844e-07 3.5240846428096634e-14 -0.9999999403953552 +99 0.10450613498687744 0.6344103217124939 1.0 9.614554841164136e-08 3.6653645452133787e-07 3.6653645452133787e-07 3.524084981622842e-14 -1.0 +94 0.15675920248031616 0.6344103813171387 1.0 9.614554841164136e-08 3.6653645452133787e-07 3.6653645452133787e-07 3.524084981622842e-14 -1.0 +113 0.7902697324752808 0.19854402542114258 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +93 0.7902697324752808 0.19252431392669678 1.1756982587485254e-07 1.0 -3.6654066093433357e-07 -4.309411917482846e-14 -3.6654066093433357e-07 -1.0 +99 0.8425226211547852 0.192524254322052 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +108 0.8425226211547852 0.1566908359527588 1.0 9.614554841164136e-08 7.720890948803572e-07 -7.720890948803572e-07 -7.423292395277586e-14 1.0 +92 0.8425226211547852 0.15067124366760254 1.0 9.614554841164136e-08 7.72089151723776e-07 -7.72089151723776e-07 -7.423293072903944e-14 1.0 +96 0.8947756886482239 0.15067124366760254 0.9999999403953552 9.614553420078664e-08 7.720890380369383e-07 -7.720890380369383e-07 -7.423291717651229e-14 0.9999999403953552 +91 0.6859229803085327 0.22864270210266113 -5.8245692713398967e-08 1.0 -7.642914283678692e-07 -4.451668390468774e-14 7.642914283678692e-07 1.0 +94 0.6859229803085327 0.23466229438781738 -5.824568916068529e-08 1.0 -7.642913715244504e-07 -4.4516680516555954e-14 7.642913715244504e-07 1.0 +97 0.6336699724197388 0.23466229438781738 -5.824568916068529e-08 1.0 -7.642913715244504e-07 -4.4516680516555954e-14 7.642913715244504e-07 1.0 +121 0.8947756886482239 0.0 1.0 9.614549867364985e-08 9.571723467161064e-07 -9.571723467161064e-07 -1.3446218360968487e-07 1.0 +96 0.8947756886482239 0.15067124366760254 1.0 9.614549867364985e-08 9.571723467161064e-07 -9.571723467161064e-07 -1.3446218360968487e-07 1.0 +92 0.8425226211547852 0.15067124366760254 1.0 9.614549867364985e-08 9.571723467161064e-07 -9.571723467161064e-07 -1.3446218360968487e-07 1.0 +101 0.6859229803085327 0.19854402542114258 0.0 1.0 -5.616386289375441e-08 -0.0 5.616386289375441e-08 1.0 +100 0.6859229803085327 0.20456361770629883 0.0 1.0 0.0 0.0 0.0 1.0 +115 0.6336699724197388 0.20456361770629883 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +100 0.6859229803085327 0.20456361770629883 0.0 1.0 0.0 0.0 0.0 1.0 +88 0.6859229803085327 0.21058344841003418 0.0 1.0 0.0 0.0 0.0 1.0 +116 0.6336699724197388 0.21058344841003418 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +88 0.6859229803085327 0.21058344841003418 -5.8245849032800834e-08 1.0 -7.642611308256164e-07 -4.451503727263828e-14 7.642611308256164e-07 1.0 +89 0.6859229803085327 0.21660327911376953 -5.8245849032800834e-08 1.0 -7.642610739821976e-07 -4.451503388450649e-14 7.642610739821976e-07 1.0 +117 0.6336699724197388 0.21660327911376953 -5.8245849032800834e-08 1.0 -7.642611308256164e-07 -4.451503727263828e-14 7.642611308256164e-07 1.0 +89 0.6859229803085327 0.21660327911376953 -5.8245849032800834e-08 1.0 -7.642914283678692e-07 -4.451680248930036e-14 7.642914283678692e-07 1.0 +90 0.6859229803085327 0.22262287139892578 -5.8245849032800834e-08 1.0 -7.642913715244504e-07 -4.451679910116857e-14 7.642913715244504e-07 1.0 +118 0.6336699724197388 0.22262287139892578 -5.8245849032800834e-08 1.0 -7.642913715244504e-07 -4.451679910116857e-14 7.642913715244504e-07 1.0 +90 0.6859229803085327 0.22262287139892578 0.0 1.0 -5.616386644646809e-08 -0.0 5.616386644646809e-08 1.0 +91 0.6859229803085327 0.22864270210266113 0.0 1.0 0.0 0.0 0.0 1.0 +119 0.6336699724197388 0.22864270210266113 0.0 1.0 -3.565007489214622e-07 -0.0 3.565007489214622e-07 1.0 +93 0.8425226211547852 0.1928093433380127 0.9999999403953552 9.6145541306214e-08 0.0 -0.0 0.0 0.9999999403953552 +113 0.8425226211547852 0.18678951263427734 1.0 9.614553420078664e-08 0.0 -0.0 0.0 1.0 +119 0.8947756886482239 0.18678951263427734 1.0 9.614554841164136e-08 0.0 -0.0 0.0 1.0 +113 0.8425226211547852 0.18678951263427734 0.9999999403953552 9.6145541306214e-08 -3.7979039007041138e-06 3.7979039007041138e-06 3.6515156675263893e-13 0.9999999403953552 +112 0.8425226211547852 0.180769681930542 1.0 9.614554841164136e-08 -3.7979039007041138e-06 3.7979039007041138e-06 3.6515156675263893e-13 1.0 +118 0.8947756886482239 0.1807699203491211 1.0 9.614554841164136e-08 -3.7979039007041138e-06 3.7979039007041138e-06 3.6515156675263893e-13 1.0 +112 0.8425226211547852 0.180769681930542 1.0 9.614554841164136e-08 1.5363793863798492e-06 -1.5363793863798492e-06 -1.4771604078811507e-13 1.0 +111 0.8425226211547852 0.17475008964538574 1.0 9.614555551706871e-08 1.5363793863798492e-06 -1.5363793863798492e-06 -1.4771604078811507e-13 1.0 +117 0.8947756886482239 0.17475008964538574 1.0 9.614554841164136e-08 1.5363791590061737e-06 -1.5363791590061737e-06 -1.4771601368306075e-13 1.0 +111 0.8425226211547852 0.17475008964538574 1.0 9.614554841164136e-08 7.7205851312101e-07 -7.7205851312101e-07 -7.4229983054383e-14 1.0 +110 0.8425226211547852 0.1687302589416504 1.0 9.614554841164136e-08 7.7205851312101e-07 -7.7205851312101e-07 -7.4229983054383e-14 1.0 +116 0.8947756886482239 0.1687302589416504 0.9999999403953552 9.614553420078664e-08 7.7205851312101e-07 -7.7205851312101e-07 -7.4229983054383e-14 0.9999999403953552 +110 0.8425226211547852 0.1687302589416504 0.9999999403953552 9.6145541306214e-08 0.0 -0.0 0.0 0.9999999403953552 +109 0.8425226211547852 0.16271066665649414 1.0 9.614553420078664e-08 0.0 -0.0 0.0 1.0 +115 0.8947756886482239 0.16271066665649414 1.0 9.614554841164136e-08 0.0 -0.0 0.0 1.0 +109 0.8425226211547852 0.16271066665649414 0.9999999403953552 9.614503682087161e-08 7.642598802704015e-07 -7.642598234269826e-07 -6.731023063366592e-07 0.9999999403953552 +108 0.8425226211547852 0.1566908359527588 1.0 9.614503682087161e-08 7.642599371138203e-07 -7.642598802704015e-07 -6.731023631800781e-07 1.0 +114 0.8947756886482239 0.1566908359527588 1.0 9.614503682087161e-08 7.642599371138203e-07 -7.642598802704015e-07 -6.731023631800781e-07 1.0 +92 0.7902697324752808 0.23466241359710693 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +108 0.7902697324752808 0.22864270210266113 1.1756982587485254e-07 1.0 -3.6654066093433357e-07 -4.309411917482846e-14 -3.6654066093433357e-07 -1.0 +102 0.8425227403640747 0.22864264249801636 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +108 0.7902697324752808 0.22864270210266113 0.0 1.0 0.0 0.0 0.0 -1.0 +109 0.7902697324752808 0.22262293100357056 0.0 1.0 0.0 0.0 0.0 -1.0 +103 0.8425226211547852 0.22262293100357056 0.0 1.0 0.0 0.0 0.0 -1.0 +109 0.7902697324752808 0.22262293100357056 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +110 0.7902697324752808 0.21660321950912476 1.1756982587485254e-07 1.0 -3.6654066093433357e-07 -4.309411917482846e-14 -3.6654066093433357e-07 -1.0 +104 0.8425226211547852 0.21660315990447998 1.1756982587485254e-07 1.0 -3.66540689356043e-07 -4.3094122562960246e-14 -3.66540689356043e-07 -1.0 +110 0.7902697324752808 0.21660321950912476 6.686288855917155e-08 1.0 3.9773561866240925e-07 2.659375303792292e-14 3.9773561866240925e-07 -1.0 +111 0.7902697324752808 0.21058350801467896 6.686288855917155e-08 1.0 3.9773561866240925e-07 2.659375303792292e-14 3.9773561866240925e-07 -1.0 +105 0.8425226211547852 0.21058344841003418 6.686288855917155e-08 1.0 3.9773561866240925e-07 2.659375303792292e-14 3.9773561866240925e-07 -1.0 +105 0.8425226211547852 0.21058344841003418 0.0 1.0 3.976402922489797e-07 0.0 3.976402922489797e-07 -1.0 +111 0.7902697324752808 0.21058350801467896 0.0 1.0 3.976402922489797e-07 0.0 3.976402922489797e-07 -1.0 +112 0.7902697324752808 0.20456373691558838 0.0 1.0 3.976402922489797e-07 0.0 3.976402922489797e-07 -1.0 +112 0.7902697324752808 0.20456373691558838 0.0 1.0 0.0 0.0 0.0 -1.0 +113 0.7902697324752808 0.19854402542114258 0.0 1.0 0.0 0.0 0.0 -1.0 +107 0.8425226211547852 0.19854402542114258 0.0 1.0 0.0 0.0 0.0 -1.0 +98 0.10450613498687744 0.6765484809875488 1.0 9.614554841164136e-08 -7.642751143066562e-07 -7.642751143066562e-07 -7.348164638614277e-14 -1.0 +102 0.10450613498687744 0.670528769493103 1.0 9.614554841164136e-08 -7.642750574632373e-07 -7.642750574632373e-07 -7.348163960987919e-14 -1.0 +101 0.15675920248031616 0.670528769493103 0.9999999403953552 9.614553420078664e-08 -7.642750574632373e-07 -7.642750574632373e-07 -7.348163960987919e-14 -0.9999999403953552 +102 0.10450613498687744 0.670528769493103 0.9999999403953552 9.6145541306214e-08 -1.138613924922538e-06 -1.138613924922538e-06 -1.0947265229738212e-13 -0.9999999403953552 +103 0.10450613498687744 0.6645090579986572 1.0 9.614553420078664e-08 -1.138613924922538e-06 -1.138613924922538e-06 -1.0947265229738212e-13 -1.0 +100 0.15675920248031616 0.6645089983940125 1.0 9.614554841164136e-08 -1.1386140386093757e-06 -1.1386140386093757e-06 -1.0947266584990928e-13 -1.0 +103 0.10450613498687744 0.6645090579986572 1.0 9.614558393877815e-08 -1.1386025562387658e-06 -1.1386025562387658e-06 -1.094716087527911e-13 -1.0 +104 0.10450613498687744 0.6584892868995667 1.0 9.614558393877815e-08 -1.1386025562387658e-06 -1.1386025562387658e-06 -1.094716087527911e-13 -1.0 +88 0.15675920248031616 0.6584892272949219 1.0 9.614558393877815e-08 -1.1386026699256035e-06 -1.1386026699256035e-06 -1.0947161552905468e-13 -1.0 +104 0.10450613498687744 0.6584892868995667 0.9999999403953552 9.6145541306214e-08 -7.720661301391374e-07 -7.720661301391374e-07 -7.4230721667113e-14 -0.9999999403953552 +105 0.10450613498687744 0.6524695158004761 1.0 9.614554841164136e-08 -7.720661301391374e-07 -7.720661301391374e-07 -7.4230721667113e-14 -1.0 +89 0.15675920248031616 0.6524695158004761 1.0 9.614554841164136e-08 -7.720661301391374e-07 -7.720661301391374e-07 -7.4230721667113e-14 -1.0 +105 0.10450613498687744 0.6524695158004761 1.0 9.614554841164136e-08 -7.642751143066562e-07 -7.642751143066562e-07 -7.348164638614277e-14 -1.0 +106 0.10450613498687744 0.6464498043060303 1.0 9.614554841164136e-08 -7.642750574632373e-07 -7.642750574632373e-07 -7.348163960987919e-14 -1.0 +90 0.15675920248031616 0.6464498043060303 0.9999999403953552 9.614553420078664e-08 -7.642750574632373e-07 -7.642750574632373e-07 -7.348163960987919e-14 -0.9999999403953552 +106 0.10450613498687744 0.6464498043060303 0.9999999403953552 9.6145541306214e-08 -1.4348132733677035e-20 -6.471622418730352e-14 6.731066832799115e-07 -0.9999999403953552 +107 0.10450613498687744 0.6404300928115845 1.0 9.614553420078664e-08 -1.4348132733677035e-20 -6.471621741103994e-14 6.731067401233304e-07 -1.0 +91 0.15675920248031616 0.6404300928115845 1.0 9.614554841164136e-08 -1.4348132733677035e-20 -6.47162309635671e-14 6.731067401233304e-07 -1.0 +121 0.6336699724197388 0.04185295104980469 -1.9392172134757857e-07 1.0 1.9258511940734024e-07 3.734643819783105e-14 -1.9258511940734024e-07 1.0 +127 0.5293234586715698 0.04185295104980469 -1.9392172134757857e-07 1.0 1.9258511940734024e-07 3.734643819783105e-14 -1.9258511940734024e-07 1.0 +125 0.5293234586715698 0.0 -1.9392172134757857e-07 1.0 1.9258511940734024e-07 3.734643819783105e-14 -1.9258511940734024e-07 1.0 +92 0.7902697324752808 0.23466241359710693 -3.716411943813225e-14 1.0 -3.715283014571469e-07 -1.0003038397599084e-07 -3.715283014571469e-07 -1.0 +98 0.8425227403640747 0.23466235399246216 -3.716411943813225e-14 1.0 -3.715283298788563e-07 -1.0003038397599084e-07 -3.715283298788563e-07 -1.0 +122 0.8425227403640747 0.3853335380554199 -3.716411943813225e-14 1.0 -3.715283298788563e-07 -1.0003038397599084e-07 -3.715283298788563e-07 -1.0 +95 0.6859229803085327 0.19252419471740723 4.3027932861150475e-07 0.9999999403953552 -7.691656378483458e-07 3.3095607417793493e-13 7.691656378483458e-07 0.9999999403953552 +96 0.6336699724197388 0.19252419471740723 4.302793570332142e-07 1.0 -7.691657515351835e-07 3.3095612838804356e-13 7.691657515351835e-07 1.0 +121 0.6336699724197388 0.04185295104980469 4.3027932861150475e-07 1.0 -7.691657515351835e-07 3.3095612838804356e-13 7.691657515351835e-07 1.0 +95 0.15675920248031616 0.6765484809875488 1.0 9.614562657134229e-08 6.687875613732704e-21 -1.292793861329064e-14 1.34462126766266e-07 -1.0 +123 0.15675920248031616 0.8272196054458618 0.9999999403953552 9.614562657134229e-08 6.687876017629487e-21 -1.292793861329064e-14 1.344621125554113e-07 -0.9999999403953552 +122 0.10450613498687744 0.8272196054458618 1.0 9.614562657134229e-08 6.687875613732704e-21 -1.292793861329064e-14 1.34462126766266e-07 -1.0 +125 1.0 0.05225306749343872 0.0 0.0 -1.0 1.0 0.0 0.0 +127 0.9581468105316162 0.05225306749343872 0.0 0.0 -1.0 1.0 0.0 0.0 +126 0.9581468105316162 0.0 0.0 0.0 -0.9999999403953552 0.9999999403953552 0.0 0.0 +87 0.9787143468856812 0.7902694940567017 -1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 1.0 0.0 +86 0.9264613389968872 0.7902694940567017 -1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 1.0 0.0 +125 0.9264613389968872 0.6859229803085327 -1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 1.0 0.0 +120 0.3845745921134949 0.9734193086624146 1.0 0.0 0.0 -0.0 1.0 1.9258514782904967e-07 +126 0.3845745921134949 0.8690727949142456 1.0 0.0 0.0 -0.0 1.0 1.9258514782904967e-07 +127 0.4368276596069336 0.8690727949142456 1.0 0.0 0.0 -0.0 1.0 1.9258514782904967e-07 +87 0.7902697324752808 0.42718660831451416 -9.696086777921664e-08 1.0 0.0 -0.0 0.0 -1.0 +124 0.6859232187271118 0.42718660831451416 -9.696086067378928e-08 1.0 0.0 -0.0 0.0 -1.0 +126 0.6859232187271118 0.3853335380554199 -9.696086777921664e-08 1.0 0.0 -0.0 0.0 -1.0 +21 0.2646617889404297 0.3639061450958252 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +22 0.2646617889404297 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +150 0.0 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +20 0.2646617889404297 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +21 0.2646617889404297 0.3639061450958252 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +149 0.0 0.3639061450958252 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +19 0.2646617889404297 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +20 0.2646617889404297 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +148 0.0 0.33791279792785645 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +18 0.2646617889404297 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +19 0.2646617889404297 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +147 0.0 0.31191956996917725 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +17 0.2646617889404297 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +18 0.2646617889404297 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +146 0.0 0.2859262228012085 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +16 0.2646617889404297 0.23393964767456055 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +17 0.2646617889404297 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +145 0.0 0.2599329948425293 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +15 0.2646617889404297 0.20794641971588135 1.0 0.0 -2.8072191682326775e-08 2.8072189905969935e-08 0.0 0.9999999403953552 +16 0.2646617889404297 0.23393964767456055 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +144 0.0 0.23393964767456055 1.0 0.0 -2.1117401161063754e-07 2.1117399739978282e-07 0.0 0.9999999403953552 +14 0.2646617889404297 0.1819530725479126 1.0 0.0 -2.13988286645872e-07 2.13988286645872e-07 0.0 1.0 +15 0.2646617889404297 0.20794641971588135 1.0 0.0 -4.564228959225147e-07 4.564228959225147e-07 0.0 1.0 +143 0.0 0.2079463005065918 0.9999999403953552 0.0 -2.8446304867202343e-08 2.8446304867202343e-08 0.0 0.9999999403953552 +13 0.2646617889404297 0.15595972537994385 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +14 0.2646617889404297 0.1819530725479126 1.0 0.0 -2.13988286645872e-07 2.13988286645872e-07 0.0 1.0 +142 0.0 0.1819530725479126 1.0 0.0 0.0 -0.0 0.0 1.0 +12 0.2646617889404297 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +13 0.2646617889404297 0.15595972537994385 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +141 0.0 0.15595972537994385 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +11 0.2646617889404297 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +12 0.2646617889404297 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +140 0.0 0.12996649742126465 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +10 0.2646617889404297 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +11 0.2646617889404297 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +139 0.0 0.1039731502532959 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +9 0.2646617889404297 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +10 0.2646617889404297 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +138 0.0 0.0779799222946167 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +8 0.2646617889404297 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +9 0.2646617889404297 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +137 0.0 0.05198657512664795 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +7 0.2646617889404297 0.0 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +8 0.2646617889404297 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +136 0.0 0.02599334716796875 1.0 0.0 0.0 -0.0 0.0 0.9999999403953552 +153 0.5293235778808594 0.38989949226379395 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +152 0.5293235778808594 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +24 0.2646617889404297 0.41589272022247314 -1.0 0.0 0.0 0.0 -0.0 0.9999999403953552 +132 0.9581469297409058 0.5293235778808594 0.0 1.0 0.0 -1.0 0.0 0.0 +134 0.9264613389968872 0.5293235778808594 0.0 1.0 0.0 -1.0 0.0 0.0 +6 0.9264613389968872 0.2646617889404297 0.0 1.0 0.0 -1.0 0.0 0.0 +128 0.3323215842247009 0.8690727353096008 -1.0 0.0 0.0 0.0 -1.0 0.0 +130 0.3323215842247009 0.9798465967178345 -1.0 0.0 0.0 0.0 -1.0 0.0 +2 0.22154772281646729 0.9798465967178345 -1.0 0.0 0.0 0.0 -1.0 0.0 +131 0.11077386140823364 0.869072437286377 0.0 -1.0 0.0 0.0 0.0 1.0 +130 0.11077386140823364 0.9798464775085449 0.0 -1.0 0.0 0.0 0.0 1.0 +128 0.0 0.9798464775085449 0.0 -1.0 0.0 0.0 0.0 1.0 +151 0.9264613389968872 0.8577787280082703 0.0 -1.0 0.0 0.0 0.0 0.9999999403953552 +134 0.9264613389968872 0.8837719559669495 0.0 -1.0 0.0 0.0 0.0 0.9999999403953552 +132 0.8947757482528687 0.8837719559669495 0.0 -1.0 0.0 0.0 0.0 0.9999999403953552 +135 0.926461398601532 0.4418860077857971 1.4396411529560282e-07 -1.0 3.8123835111036897e-07 -5.488464161775529e-14 3.8123835111036897e-07 1.0 +136 0.926461398601532 0.46787935495376587 1.4396411529560282e-07 -1.0 3.812383795320784e-07 -5.488464500588708e-14 3.812383795320784e-07 1.0 +167 0.8947757482528687 0.46787935495376587 1.4396411529560282e-07 -1.0 3.8123832268865954e-07 -5.48846382296235e-14 3.8123832268865954e-07 1.0 +136 0.926461398601532 0.46787935495376587 1.4396397318705567e-07 -1.0 2.8593009915311995e-07 -4.1163632832214025e-14 2.8593009915311995e-07 1.0 +137 0.926461398601532 0.49387258291244507 1.439639873979104e-07 -1.0 2.859301275748294e-07 -4.1163636220345814e-14 2.859301275748294e-07 1.0 +166 0.8947757482528687 0.49387258291244507 1.4396397318705567e-07 -1.0 2.8593009915311995e-07 -4.1163632832214025e-14 2.8593009915311995e-07 1.0 +137 0.926461398601532 0.49387258291244507 0.0 -1.0 1.3869561144019826e-07 0.0 1.3869561144019826e-07 1.0 +138 0.926461398601532 0.5198659300804138 0.0 -1.0 0.0 0.0 0.0 1.0 +165 0.8947757482528687 0.5198659300804138 0.0 -0.9999999403953552 1.2412459682309418e-07 0.0 1.2412459682309418e-07 0.9999999403953552 +165 0.8947757482528687 0.5198659300804138 0.0 -0.9999999403953552 1.2412459682309418e-07 0.0 1.2412459682309418e-07 0.9999999403953552 +138 0.926461398601532 0.5198659300804138 0.0 -1.0 0.0 0.0 0.0 1.0 +139 0.926461398601532 0.545859158039093 0.0 -1.0 0.0 0.0 0.0 1.0 +164 0.8947757482528687 0.545859158039093 5.141351380189008e-07 -1.0 -6.342182814478292e-07 3.260739117952327e-13 -6.342182814478292e-07 1.0 +139 0.926461398601532 0.545859158039093 5.141351380189008e-07 -1.0 -6.342182814478292e-07 3.260739117952327e-13 -6.342182814478292e-07 1.0 +140 0.926461398601532 0.5718525052070618 5.141351380189008e-07 -1.0 -6.342182814478292e-07 3.260739117952327e-13 -6.342182814478292e-07 1.0 +163 0.8947757482528687 0.5718525052070618 0.0 -1.0 -1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +140 0.926461398601532 0.5718525052070618 0.0 -1.0 -1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +141 0.926461398601532 0.597845733165741 0.0 -1.0 -1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +162 0.8947757482528687 0.5978458523750305 0.0 -1.0 2.493811280146474e-06 0.0 2.493811280146474e-06 1.0 +141 0.926461398601532 0.597845733165741 0.0 -1.0 2.493811280146474e-06 0.0 2.493811280146474e-06 1.0 +142 0.926461398601532 0.6238390803337097 0.0 -1.0 2.493811280146474e-06 0.0 2.493811280146474e-06 1.0 +161 0.8947757482528687 0.6238390803337097 0.0 -1.0 -1.2684367902693339e-06 0.0 -1.2684367902693339e-06 1.0 +142 0.926461398601532 0.6238390803337097 0.0 -1.0 -1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +143 0.9264613389968872 0.6498323082923889 0.0 -1.0 -1.2684366765824961e-06 0.0 -1.2684366765824961e-06 1.0 +160 0.8947757482528687 0.6498324275016785 0.0 -1.0 2.4938083242886933e-06 0.0 2.4938083242886933e-06 1.0 +143 0.9264613389968872 0.6498323082923889 0.0 -1.0 2.4938083242886933e-06 0.0 2.4938083242886933e-06 1.0 +144 0.9264613389968872 0.6758256554603577 0.0 -1.0 2.4938083242886933e-06 0.0 2.4938083242886933e-06 1.0 +159 0.8947757482528687 0.6758256554603577 0.0 -1.0 -1.9026549580303254e-06 0.0 -1.9026549580303254e-06 1.0 +144 0.9264613389968872 0.6758256554603577 0.0 -1.0 -1.90265473065665e-06 0.0 -1.90265473065665e-06 1.0 +145 0.9264613389968872 0.7018190026283264 0.0 -1.0 -1.9026548443434876e-06 0.0 -1.9026548443434876e-06 1.0 +158 0.8947757482528687 0.7018190026283264 0.0 -1.0 -2.536873807912343e-06 0.0 -2.536873807912343e-06 1.0 +145 0.9264613389968872 0.7018190026283264 0.0 -1.0 -2.5368735805386677e-06 0.0 -2.5368735805386677e-06 1.0 +146 0.9264613389968872 0.7278122305870056 0.0 -1.0 -2.5368735805386677e-06 0.0 -2.5368735805386677e-06 1.0 +157 0.8947757482528687 0.7278123497962952 0.0 -1.0 1.2253891554792062e-06 0.0 1.2253891554792062e-06 1.0 +146 0.9264613389968872 0.7278122305870056 0.0 -1.0 1.2253890417923685e-06 0.0 1.2253890417923685e-06 1.0 +147 0.9264613389968872 0.7538054585456848 0.0 -1.0 1.2253890417923685e-06 0.0 1.2253890417923685e-06 1.0 +156 0.8947757482528687 0.7538055777549744 0.0 -1.0 1.2253716477061971e-06 0.0 1.2253716477061971e-06 1.0 +147 0.9264613389968872 0.7538054585456848 0.0 -1.0 1.2253716477061971e-06 0.0 1.2253716477061971e-06 1.0 +148 0.9264613389968872 0.7797988057136536 0.0 -1.0 1.2253716477061971e-06 0.0 1.2253716477061971e-06 1.0 +155 0.8947757482528687 0.7797988057136536 0.0 -1.0 -2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +148 0.9264613389968872 0.7797988057136536 0.0 -1.0 -2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +149 0.9264613389968872 0.8057921528816223 0.0 -1.0 -2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +154 0.8947757482528687 0.8057921528816223 0.0 -1.0 -2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +149 0.9264613389968872 0.8057921528816223 0.0 -1.0 -2.5368733531649923e-06 0.0 -2.5368733531649923e-06 1.0 +150 0.9264613389968872 0.8317855000495911 0.0 -1.0 -2.536873125791317e-06 0.0 -2.536873125791317e-06 1.0 +153 0.8947757482528687 0.8317855000495911 0.0 -0.9999999403953552 -1.2684367902693339e-06 0.0 -1.2684366765824961e-06 0.9999998807907104 +150 0.9264613389968872 0.8317855000495911 0.0 -1.0 -1.2684366765824961e-06 0.0 -1.2684365628956584e-06 0.9999999403953552 +151 0.9264613389968872 0.8577787280082703 0.0 -1.0 -1.2684367902693339e-06 0.0 -1.2684366765824961e-06 0.9999999403953552 +184 0.42142078280448914 0.6765483617782593 -7.705211828579195e-07 1.0 0.0 -1.0 -7.705211828579195e-07 0.0 +202 0.42142078280448914 0.670528769493103 -4.1412678797314584e-07 1.0 0.0 -1.0 -4.1412678797314584e-07 0.0 +189 0.4736737608909607 0.670528769493103 -7.692724466323853e-07 1.0 0.0 -1.0 -7.692724466323853e-07 0.0 +175 0.9470286965370178 0.8837718963623047 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +174 0.9470286965370178 0.9360251426696777 0.0 -1.0 0.0 0.0 0.0 1.0 +170 0.8947757482528687 0.9360251426696777 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +171 0.20901250839233398 0.869072675704956 0.0 0.0 -1.0 -1.0 0.0 0.0 +170 0.15675926208496094 0.869072675704956 0.0 0.0 -1.0 -1.0 0.0 0.0 +183 0.15675926208496094 0.6765484809875488 0.0 0.0 -1.0 -1.0 0.0 0.0 +173 0.31691503524780273 0.869072437286377 0.0 0.0 -1.0 1.0 0.0 0.0 +172 0.2646617889404297 0.869072437286377 0.0 0.0 -1.0 1.0 0.0 0.0 +185 0.2646617889404297 0.6765484809875488 0.0 0.0 -1.0 1.0 0.0 0.0 +168 0.4736737608909607 0.4418860673904419 2.52774214004603e-07 1.0 0.0 -1.0 2.52774214004603e-07 0.0 +182 0.4736737608909607 0.6344103813171387 8.043285788517096e-07 0.9999999403953552 0.0 -0.9999999403953552 8.043285788517096e-07 0.0 +185 0.42142078280448914 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 -1.0 1.3791679975838633e-06 0.0 +169 0.48908063769340515 0.92132568359375 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +168 0.48908063769340515 0.973578929901123 0.0 1.0 0.0 0.0 0.0 1.0 +172 0.4368276596069336 0.973578929901123 0.0 0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +183 0.4736737608909607 0.6765483617782593 -7.04278647845058e-07 1.0 0.0 -1.0 -7.04278647845058e-07 0.0 +170 0.4736737608909607 0.8690727949142456 0.0 1.0 0.0 -1.0 0.0 0.0 +174 0.42142078280448914 0.8690727949142456 -1.29773908952302e-07 1.0 0.0 -1.0 -1.29773908952302e-07 0.0 +180 0.4736737310886383 0.6344103813171387 7.04278647845058e-07 1.0 0.0 1.0 -7.04278647845058e-07 0.0 +175 0.4736737310886383 0.44188594818115234 0.0 1.0 0.0 1.0 -0.0 0.0 +171 0.5259267091751099 0.44188594818115234 1.29773908952302e-07 1.0 0.0 1.0 -1.29773908952302e-07 0.0 +173 0.4736737310886383 0.869072437286377 1.6851643636073277e-07 1.0 0.0 1.0 -1.6851643636073277e-07 0.0 +181 0.4736737310886383 0.6765484809875488 5.272975158732152e-07 0.9999999403953552 0.0 0.9999999403953552 -5.272975158732152e-07 0.0 +187 0.5259267091751099 0.6765484809875488 7.97253221662686e-07 1.0 0.0 1.0 -7.97253221662686e-07 0.0 +187 0.20901250839233398 0.6344103813171387 7.042775109766808e-07 0.0 -1.0 -1.0 0.0 -7.042775109766808e-07 +182 0.15675926208496094 0.6344103813171387 4.126639510104724e-07 0.0 -1.0 -1.0 0.0 -4.126639510104724e-07 +168 0.15675926208496094 0.4418860673904419 1.2977395158486615e-07 0.0 -1.0 -1.0 0.0 -1.2977395158486615e-07 +182 0.15675926208496094 0.6344103813171387 4.126639510104724e-07 0.0 -1.0 -1.0 0.0 -4.126639510104724e-07 +187 0.20901250839233398 0.6344103813171387 7.042775109766808e-07 0.0 -1.0 -1.0 0.0 -7.042775109766808e-07 +195 0.20901250839233398 0.6404300928115845 7.130008157218981e-07 0.0 -1.0 -1.0 0.0 -7.130008157218981e-07 +195 0.5259267091751099 0.6705284118652344 3.542138244938542e-07 1.0 0.0 1.0 -3.542138244938542e-07 0.0 +187 0.5259267091751099 0.6765484809875488 7.97253221662686e-07 1.0 0.0 1.0 -7.97253221662686e-07 0.0 +181 0.4736737310886383 0.6765484809875488 5.272975158732152e-07 0.9999999403953552 0.0 0.9999999403953552 -5.272975158732152e-07 0.0 +184 0.2646617889404297 0.6344103813171387 -7.691645009799686e-07 -8.413836383169837e-08 -0.9999999403953552 0.9999999403953552 -6.471625129235783e-14 -7.691645009799686e-07 +180 0.31691503524780273 0.6344103813171387 -7.691645009799686e-07 -8.413837093712573e-08 -1.0 1.0 -6.471625129235783e-14 -7.691645009799686e-07 +196 0.31691503524780273 0.6404299736022949 -7.691645578233874e-07 -8.413837093712573e-08 -1.0 1.0 -6.471625129235783e-14 -7.691645578233874e-07 +207 0.42142078280448914 0.6404300928115845 7.012266109995835e-07 1.0 0.0 -1.0 7.012266109995835e-07 0.0 +185 0.42142078280448914 0.6344102621078491 1.3791679975838633e-06 1.0 0.0 -1.0 1.3791679975838633e-06 0.0 +182 0.4736737608909607 0.6344103813171387 8.043285788517096e-07 0.9999999403953552 0.0 -0.9999999403953552 8.043285788517096e-07 0.0 +180 0.31691503524780273 0.6344103813171387 -7.691646146668063e-07 8.41849470134548e-08 -1.0 1.0 6.475208417415848e-14 -7.691646146668063e-07 +184 0.2646617889404297 0.6344103813171387 -7.691645578233874e-07 8.41849470134548e-08 -1.0 1.0 6.47520773978949e-14 -7.691645578233874e-07 +174 0.2646617889404297 0.44188594818115234 -7.691645578233874e-07 8.41849470134548e-08 -1.0 1.0 6.47520773978949e-14 -7.691645578233874e-07 +202 0.42142078280448914 0.670528769493103 -4.1412678797314584e-07 1.0 0.0 -1.0 -4.1412678797314584e-07 0.0 +203 0.42142078280448914 0.6645089387893677 0.0 1.0 0.0 -1.0 0.0 0.0 +188 0.4736737608909607 0.6645089387893677 -3.5650114682539424e-07 1.0 0.0 -1.0 -3.5650114682539424e-07 0.0 +204 0.42142078280448914 0.6584893465042114 -3.5422792166173167e-07 1.0 0.0 -1.0 -3.5422792166173167e-07 0.0 +176 0.4736737608909607 0.6584893465042114 0.0 1.0 0.0 -1.0 0.0 0.0 +188 0.4736737608909607 0.6645089387893677 -3.5650114682539424e-07 1.0 0.0 -1.0 -3.5650114682539424e-07 0.0 +204 0.42142078280448914 0.6584893465042114 -3.5422792166173167e-07 1.0 0.0 -1.0 -3.5422792166173167e-07 0.0 +205 0.42142078280448914 0.6524695158004761 -7.644472361789667e-07 1.0 0.0 -1.0 -7.644472361789667e-07 0.0 +177 0.4736737608909607 0.6524695158004761 -4.124855195186683e-07 0.9999999403953552 0.0 -0.9999999403953552 -4.124855195186683e-07 0.0 +205 0.42142078280448914 0.6524695158004761 -7.644472361789667e-07 1.0 0.0 -1.0 -7.644472361789667e-07 0.0 +206 0.42142078280448914 0.6464498043060303 -4.102198261080048e-07 1.0 0.0 -1.0 -4.102198261080048e-07 0.0 +178 0.4736737608909607 0.6464498043060303 -7.689871495131229e-07 1.0 0.0 -1.0 -7.689871495131229e-07 0.0 +206 0.42142078280448914 0.6464498043060303 -4.102198261080048e-07 1.0 0.0 -1.0 -4.102198261080048e-07 0.0 +207 0.42142078280448914 0.6404300928115845 7.012266109995835e-07 1.0 0.0 -1.0 7.012266109995835e-07 0.0 +179 0.4736737608909607 0.6404300928115845 -3.565011184036848e-07 1.0 0.0 -1.0 -3.565011184036848e-07 0.0 +185 0.2646617889404297 0.6765484809875488 -5.6163770523198764e-08 0.0 -1.0 1.0 0.0 -5.6163770523198764e-08 +207 0.2646617889404297 0.6705284118652344 0.0 0.0 -1.0 1.0 0.0 0.0 +201 0.31691503524780273 0.6705284118652344 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +206 0.2646617889404297 0.6645088195800781 -5.6163734996061976e-08 0.0 -1.0 1.0 0.0 -5.6163734996061976e-08 +200 0.31691503524780273 0.6645088195800781 -7.691645009799686e-07 0.0 -1.0 1.0 0.0 -7.691645009799686e-07 +201 0.31691503524780273 0.6705284118652344 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +205 0.2646617889404297 0.6584892272949219 -1.5383290019599372e-06 0.0 -1.0 1.0 0.0 -1.5383290019599372e-06 +199 0.31691503524780273 0.6584892272949219 -1.5383290019599372e-06 0.0 -1.0 1.0 0.0 -1.5383290019599372e-06 +200 0.31691503524780273 0.6645088195800781 -1.5383291156467749e-06 0.0 -1.0 1.0 0.0 -1.5383291156467749e-06 +204 0.2646617889404297 0.6524691581726074 -7.691646146668063e-07 -8.413927332640014e-08 -0.9999999403953552 0.9999999403953552 -6.471694924750637e-14 -7.691646146668063e-07 +198 0.31691503524780273 0.6524691581726074 -7.691646715102252e-07 -8.413927332640014e-08 -1.0 1.0 -6.471695602376995e-14 -7.691646715102252e-07 +199 0.31691503524780273 0.6584892272949219 -7.691646146668063e-07 -8.41392804318275e-08 -1.0 1.0 -6.471694924750637e-14 -7.691646146668063e-07 +204 0.2646617889404297 0.6524691581726074 -5.616375986505773e-08 0.0 -1.0 1.0 0.0 -5.616375986505773e-08 +203 0.2646617889404297 0.6464495658874512 0.0 0.0 -1.0 1.0 0.0 0.0 +197 0.31691503524780273 0.6464495658874512 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +202 0.2646617889404297 0.6404299736022949 -5.6163734996061976e-08 0.0 -1.0 1.0 0.0 -5.6163734996061976e-08 +196 0.31691503524780273 0.6404299736022949 -7.691645009799686e-07 0.0 -1.0 1.0 0.0 -7.691645009799686e-07 +197 0.31691503524780273 0.6464495658874512 -7.130008157218981e-07 0.0 -1.0 1.0 0.0 -7.130008157218981e-07 +186 0.5259267091751099 0.6344103813171387 7.705211828579195e-07 1.0 0.0 1.0 -7.705211828579195e-07 0.0 +190 0.5259267091751099 0.6404299736022949 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +196 0.4736737310886383 0.6404299736022949 7.692724466323853e-07 1.0 0.0 1.0 -7.692724466323853e-07 0.0 +190 0.5259267091751099 0.6404299736022949 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +191 0.5259267091751099 0.6464495658874512 3.5424190514277143e-07 1.0 0.0 1.0 -3.5424190514277143e-07 0.0 +197 0.4736737310886383 0.6464495658874512 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +191 0.5259267091751099 0.6464495658874512 3.5424190514277143e-07 1.0 0.0 1.0 -3.5424190514277143e-07 0.0 +192 0.5259267091751099 0.6524691581726074 1.1222696230106521e-06 1.0 0.0 1.0 -1.1222696230106521e-06 0.0 +198 0.4736737310886383 0.6524691581726074 4.124865427002078e-07 0.9999999403953552 0.0 0.9999999403953552 -4.124865427002078e-07 0.0 +192 0.5259267091751099 0.6524691581726074 1.1222696230106521e-06 1.0 0.0 1.0 -1.1222696230106521e-06 0.0 +193 0.5259267091751099 0.6584892272949219 1.18214984468068e-06 0.9999999403953552 0.0 0.9999999403953552 -1.18214984468068e-06 0.0 +199 0.4736737310886383 0.6584892272949219 1.1817544418590842e-06 0.9999999403953552 0.0 0.9999999403953552 -1.1817544418590842e-06 0.0 +193 0.5259267091751099 0.6584892272949219 1.18214984468068e-06 0.9999999403953552 0.0 0.9999999403953552 -1.18214984468068e-06 0.0 +194 0.5259267091751099 0.6645088195800781 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +200 0.4736737310886383 0.6645088195800781 1.12577356503607e-06 1.0 0.0 1.0 -1.12577356503607e-06 0.0 +194 0.5259267091751099 0.6645088195800781 4.1412678797314584e-07 1.0 0.0 1.0 -4.1412678797314584e-07 0.0 +195 0.5259267091751099 0.6705284118652344 3.542138244938542e-07 1.0 0.0 1.0 -3.542138244938542e-07 0.0 +201 0.4736737310886383 0.6705284118652344 3.565011184036848e-07 1.0 0.0 1.0 -3.565011184036848e-07 0.0 +189 0.15675926208496094 0.6705288887023926 -3.7935171803837875e-06 8.413927332640014e-08 -0.9999999403953552 -0.9999999403953552 -3.19183779884033e-13 3.7935171803837875e-06 +190 0.20901250839233398 0.6705286502838135 -3.7935171803837875e-06 8.413927332640014e-08 -1.0 -1.0 -3.19183779884033e-13 3.7935171803837875e-06 +186 0.20901250839233398 0.6765484809875488 -3.7935171803837875e-06 8.41392804318275e-08 -1.0 -1.0 -3.19183779884033e-13 3.7935171803837875e-06 +189 0.15675926208496094 0.6705288887023926 -2.770127025542024e-07 0.0 -1.0 -1.0 0.0 2.770127025542024e-07 +188 0.15675926208496094 0.6645090579986572 0.0 0.0 -1.0 -1.0 0.0 0.0 +191 0.20901250839233398 0.6645090579986572 -1.7583420230948832e-06 0.0 -1.0 -1.0 0.0 1.7583420230948832e-06 +176 0.15675926208496094 0.6584892272949219 0.0 0.0 -1.0 -1.0 0.0 0.0 +192 0.20901250839233398 0.6584892272949219 3.5650049312607734e-07 0.0 -0.9999999403953552 -0.9999999403953552 0.0 -3.5650049312607734e-07 +191 0.20901250839233398 0.6645090579986572 -1.7583420230948832e-06 0.0 -1.0 -1.0 0.0 1.7583420230948832e-06 +177 0.15675926208496094 0.6524696350097656 5.6163734996061976e-08 0.0 -1.0 -1.0 0.0 -5.6163734996061976e-08 +193 0.20901250839233398 0.6524696350097656 7.691645009799686e-07 0.0 -1.0 -1.0 0.0 -7.691645009799686e-07 +192 0.20901250839233398 0.6584892272949219 3.5650049312607734e-07 0.0 -0.9999999403953552 -0.9999999403953552 0.0 -3.5650049312607734e-07 +178 0.15675926208496094 0.6464498043060303 7.691645009799686e-07 8.413836383169837e-08 -0.9999999403953552 -0.9999999403953552 6.471625129235783e-14 -7.691645009799686e-07 +194 0.20901250839233398 0.6464498043060303 7.691645009799686e-07 8.413837093712573e-08 -1.0 -1.0 6.471625129235783e-14 -7.691645009799686e-07 +193 0.20901250839233398 0.6524696350097656 7.691645578233874e-07 8.413837093712573e-08 -1.0 -1.0 6.471625129235783e-14 -7.691645578233874e-07 +178 0.15675926208496094 0.6464498043060303 5.616375986505773e-08 0.0 -1.0 -1.0 0.0 -5.616375986505773e-08 +179 0.15675926208496094 0.6404300928115845 0.0 0.0 -1.0 -1.0 0.0 0.0 +195 0.20901250839233398 0.6404300928115845 7.130008157218981e-07 0.0 -1.0 -1.0 0.0 -7.130008157218981e-07 +242 0.5815765857696533 0.6257305145263672 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +229 0.5293235778808594 0.6257305145263672 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +223 0.5293235778808594 0.6197106838226318 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +215 0.9787142276763916 0.5815764665603638 1.0 -9.614556262249607e-08 0.0 -9.614556262249607e-08 -1.0 -0.0 +214 0.9264612197875977 0.5815764665603638 1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 -1.0 -0.0 +210 0.9264612197875977 0.5293234586715698 1.0 -9.614555551706871e-08 0.0 -9.614555551706871e-08 -1.0 -0.0 +211 0.0 0.44188594818115234 -1.0 9.6145541306214e-08 -1.3757913921123091e-21 -9.30811197298034e-15 -9.68127125133833e-08 1.0 +210 0.05225306749343872 0.44188594818115234 -1.0 9.614554841164136e-08 -1.3757913921123091e-21 -9.308112820013287e-15 -9.68127125133833e-08 1.0 +251 0.05225306749343872 0.48373889923095703 -0.9999999403953552 9.6145541306214e-08 -1.3757913921123091e-21 -9.30811197298034e-15 -9.681270540795595e-08 0.9999999403953552 +213 0.8425226211547852 0.3853335976600647 -1.0 9.6145541306214e-08 -2.7099313323257323e-21 1.2222950550192044e-14 1.271296383720255e-07 -1.0 +212 0.8947756886482239 0.3853335976600647 -1.0 9.614554841164136e-08 -2.7099311303773406e-21 1.2222951397224992e-14 1.271296383720255e-07 -1.0 +225 0.8947756886482239 0.5778578519821167 -1.0 9.6145541306214e-08 -2.7099313323257323e-21 1.2222950550192044e-14 1.271296383720255e-07 -1.0 +208 0.5293235778808594 0.8543732166290283 -1.8759531883461023e-07 -0.9999999403953552 7.490921802855155e-07 -1.0437937447704826e-07 7.490921802855155e-07 0.9999999403953552 +222 0.5293235778808594 0.661848783493042 -1.8759534725631966e-07 -1.0 7.490922939723532e-07 -1.0437938158247562e-07 7.490922939723532e-07 1.0 +225 0.5815765857696533 0.661848783493042 -1.8759533304546494e-07 -1.0 7.490922939723532e-07 -1.0437938158247562e-07 7.490922939723532e-07 1.0 +209 0.947028636932373 0.9360251426696777 0.0 -1.0 0.0 1.0 0.0 -0.0 +208 0.947028636932373 0.8837721347808838 0.0 -1.0 0.0 1.0 0.0 -0.0 +212 0.9992815852165222 0.8837721347808838 0.0 -1.0 0.0 1.0 0.0 -0.0 +210 0.5293235778808594 0.4271864891052246 -3.872516742831067e-07 -1.0 1.2320371557579138e-22 4.6163996968639695e-14 -1.7753882500389336e-20 1.0 +214 0.5815765261650085 0.4271864891052246 -3.872516742831067e-07 -0.9999999403953552 1.2320371557579138e-22 4.6163993580507906e-14 -1.7753882500389336e-20 0.9999999403953552 +249 0.5815765261650085 0.4690394401550293 -3.872516742831067e-07 -0.9999999403953552 1.232037029540169e-22 4.6163993580507906e-14 -1.7753882500389336e-20 0.9999999403953552 +215 0.7381760478019714 0.8543732166290283 -3.872517027048161e-07 -1.0 -3.2035323401683553e-16 1.2003650340375316e-07 -4.616398680424433e-14 -1.0 +211 0.6859230995178223 0.8543732166290283 -3.872516742831067e-07 -1.0 -3.2035323401683553e-16 1.2003650340375316e-07 -4.616398341611254e-14 -1.0 +250 0.6859230995178223 0.8125201463699341 -3.872516742831067e-07 -1.0 -3.2035323401683553e-16 1.2003650340375316e-07 -4.616398341611254e-14 -1.0 +213 0.7381761074066162 0.42718660831451416 -6.155339349334099e-08 -1.0 4.993951847609424e-07 1.0437949526931334e-07 -4.993951847609424e-07 -1.0 +221 0.7381761074066162 0.6197109222412109 -6.155339349334099e-08 -1.0 4.993951847609424e-07 1.0437949526931334e-07 -4.993951847609424e-07 -1.0 +227 0.6859230995178223 0.6197108626365662 -6.155339349334099e-08 -0.9999999403953552 4.993951847609424e-07 1.0437948816388598e-07 -4.993951847609424e-07 -0.9999999403953552 +227 0.0 0.6765482425689697 -1.0 9.614556262249607e-08 -7.691645578233874e-07 -7.691645578233874e-07 -1.2542591321107466e-07 1.0 +222 0.05225306749343872 0.6765482425689697 -1.0 9.614555551706871e-08 -7.691645578233874e-07 -7.691645578233874e-07 -1.2542591321107466e-07 1.0 +208 0.05225306749343872 0.869072675704956 -1.0 9.614555551706871e-08 -7.691645578233874e-07 -7.691645578233874e-07 -1.2542591321107466e-07 1.0 +222 0.05225306749343872 0.6765482425689697 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 1.0 +227 0.0 0.6765482425689697 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 1.0 +235 0.0 0.6705286502838135 -0.9999999403953552 9.6145541306214e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 0.9999999403953552 +227 0.6859230995178223 0.6197108626365662 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +221 0.7381761074066162 0.6197109222412109 1.6827672766339674e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +241 0.7381761074066162 0.6257306337356567 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +224 0.8947756886482239 0.6199959516525269 -0.9999999403953552 9.614553420078664e-08 -3.715285004091129e-07 3.715285004091129e-07 -3.572080917732881e-14 -0.9999999403953552 +220 0.8425226211547852 0.6199960112571716 -1.0 9.614554841164136e-08 -3.715285288308223e-07 3.715285288308223e-07 -3.57208125654606e-14 -1.0 +236 0.8425226211547852 0.6139762997627258 -1.0 9.614554841164136e-08 -3.715285288308223e-07 3.715285288308223e-07 -3.57208125654606e-14 -1.0 +225 0.5815765857696533 0.661848783493042 0.0 -1.0 5.6163852235613376e-08 0.0 5.6163852235613376e-08 1.0 +222 0.5293235778808594 0.661848783493042 0.0 -1.0 7.691655810049269e-07 0.0 7.691655810049269e-07 1.0 +219 0.5293235778808594 0.6558291912078857 0.0 -1.0 7.130018957468565e-07 0.0 7.130018957468565e-07 1.0 +220 0.8425226211547852 0.6199960112571716 -1.0 9.614569762561587e-08 -3.715272214321885e-07 3.715272214321885e-07 1.3446205571199243e-07 -1.0 +224 0.8947756886482239 0.6199959516525269 -1.0 9.614569762561587e-08 -3.715272214321885e-07 3.715272214321885e-07 1.3446205571199243e-07 -1.0 +249 0.8947756886482239 0.7706671953201294 -1.0 9.614569762561587e-08 -3.715271930104791e-07 3.715271930104791e-07 1.3446205571199243e-07 -1.0 +242 0.5815765857696533 0.6257305145263672 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +243 0.5815765857696533 0.6317501068115234 0.0 -1.0 0.0 0.0 0.0 1.0 +228 0.5293235778808594 0.6317501068115234 0.0 -1.0 3.5650106156026595e-07 0.0 3.5650106156026595e-07 1.0 +244 0.5815765857696533 0.6377699375152588 0.0 -0.9999999403953552 0.0 0.0 0.0 0.9999999403953552 +216 0.5293235778808594 0.6377699375152588 0.0 -0.9999999403953552 3.565008341865905e-07 0.0 3.565008341865905e-07 0.9999999403953552 +228 0.5293235778808594 0.6317501068115234 0.0 -1.0 3.5650106156026595e-07 0.0 3.5650106156026595e-07 1.0 +245 0.5815765857696533 0.6437897682189941 0.0 -1.0 5.6163855788327055e-08 0.0 5.6163855788327055e-08 1.0 +217 0.5293235778808594 0.6437897682189941 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +216 0.5293235778808594 0.6377699375152588 0.0 -0.9999999403953552 3.565008341865905e-07 0.0 3.565008341865905e-07 0.9999999403953552 +246 0.5815765857696533 0.6498093605041504 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +218 0.5293235778808594 0.6498093605041504 0.0 -1.0 7.691656946917647e-07 0.0 7.691656946917647e-07 1.0 +217 0.5293235778808594 0.6437897682189941 0.0 -1.0 7.691656378483458e-07 0.0 7.691656378483458e-07 1.0 +246 0.5815765857696533 0.6498093605041504 0.0 -1.0 1.0468370703620167e-07 0.0 1.0468370703620167e-07 1.0 +247 0.5815765857696533 0.6558291912078857 0.0 -1.0 0.0 0.0 0.0 1.0 +219 0.5293235778808594 0.6558291912078857 0.0 -1.0 7.130018957468565e-07 0.0 7.130018957468565e-07 1.0 +225 0.8947756886482239 0.5778578519821167 -1.0 9.614553420078664e-08 0.0 -0.0 0.0 -1.0 +247 0.8947756886482239 0.5838775634765625 -1.0 9.614553420078664e-08 0.0 -0.0 0.0 -1.0 +241 0.8425226211547852 0.5838775634765625 -1.0 9.6145541306214e-08 0.0 -0.0 0.0 -1.0 +246 0.8947756886482239 0.5898972749710083 -1.0 9.614554841164136e-08 -3.7152480558688694e-07 3.7152480558688694e-07 -3.572045681162275e-14 -1.0 +240 0.8425226211547852 0.5898973345756531 -1.0 9.614554841164136e-08 -3.7152483400859637e-07 3.7152483400859637e-07 -3.572046019975454e-14 -1.0 +241 0.8425226211547852 0.5838775634765625 -0.9999999403953552 9.6145541306214e-08 -3.7152483400859637e-07 3.7152483400859637e-07 -3.572046019975454e-14 -0.9999999403953552 +245 0.8947756886482239 0.5959169864654541 -1.0 9.614554841164136e-08 -7.430496111737739e-07 7.430496111737739e-07 -7.14409136232455e-14 -1.0 +239 0.8425226211547852 0.5959171056747437 -1.0 9.614555551706871e-08 -7.430496680171927e-07 7.430496680171927e-07 -7.144092039950908e-14 -1.0 +240 0.8425226211547852 0.5898973345756531 -1.0 9.614554841164136e-08 -7.430496680171927e-07 7.430496680171927e-07 -7.144092039950908e-14 -1.0 +244 0.8947756886482239 0.6019367575645447 -0.9999999403953552 9.614553420078664e-08 -3.715285004091129e-07 3.715285004091129e-07 -3.572080917732881e-14 -0.9999999403953552 +238 0.8425226211547852 0.6019368171691895 -1.0 9.614554841164136e-08 -3.715285288308223e-07 3.715285288308223e-07 -3.57208125654606e-14 -1.0 +239 0.8425226211547852 0.5959171056747437 -1.0 9.614554841164136e-08 -3.715285288308223e-07 3.715285288308223e-07 -3.57208125654606e-14 -1.0 +244 0.8947756886482239 0.6019367575645447 -1.0 9.614553420078664e-08 0.0 -0.0 0.0 -1.0 +243 0.8947756886482239 0.6079565286636353 -1.0 9.614553420078664e-08 0.0 -0.0 0.0 -1.0 +237 0.8425226211547852 0.6079565286636353 -1.0 9.6145541306214e-08 0.0 -0.0 0.0 -1.0 +242 0.8947756886482239 0.613976240158081 -1.0 9.614579710159887e-08 -3.7152480558688694e-07 3.715248624303058e-07 6.731022494932404e-07 -1.0 +236 0.8425226211547852 0.6139762997627258 -1.0 9.614579710159887e-08 -3.7152483400859637e-07 3.7152489085201523e-07 6.731022494932404e-07 -1.0 +237 0.8425226211547852 0.6079565286636353 -0.9999999403953552 9.614579710159887e-08 -3.7152483400859637e-07 3.7152489085201523e-07 6.731021926498215e-07 -0.9999999403953552 +230 0.6859230995178223 0.6558292508125305 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +236 0.7381761074066162 0.6558293104171753 1.6827672766339674e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +220 0.7381761074066162 0.6618490219116211 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +231 0.6859230995178223 0.6498095393180847 0.0 -1.0 0.0 0.0 0.0 -1.0 +237 0.7381761074066162 0.6498095393180847 0.0 -1.0 0.0 0.0 0.0 -1.0 +236 0.7381761074066162 0.6558293104171753 0.0 -1.0 0.0 0.0 0.0 -1.0 +232 0.6859230995178223 0.6437897682189941 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +238 0.7381761074066162 0.6437898278236389 1.6827672766339674e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +237 0.7381761074066162 0.6498095393180847 1.6827674187425146e-07 -1.0 3.7152912568672036e-07 6.251971190101083e-14 -3.7152912568672036e-07 -1.0 +233 0.6859230995178223 0.6377700567245483 0.0 -1.0 -3.9763662584846315e-07 0.0 3.9763662584846315e-07 -1.0 +239 0.7381761074066162 0.6377701163291931 0.0 -1.0 -3.976366542701726e-07 0.0 3.976366542701726e-07 -1.0 +238 0.7381761074066162 0.6437898278236389 0.0 -1.0 -3.976366542701726e-07 0.0 3.976366542701726e-07 -1.0 +234 0.6859230995178223 0.6317503452301025 0.0 -1.0 -7.691658083786024e-07 0.0 7.691658083786024e-07 -1.0 +240 0.7381761074066162 0.6317503452301025 0.0 -1.0 -7.691657515351835e-07 0.0 7.691657515351835e-07 -1.0 +239 0.7381761074066162 0.6377701163291931 0.0 -1.0 -7.691658083786024e-07 0.0 7.691658083786024e-07 -1.0 +235 0.6859230995178223 0.6257306337356567 0.0 -1.0 0.0 0.0 0.0 -1.0 +241 0.7381761074066162 0.6257306337356567 0.0 -1.0 0.0 0.0 0.0 -1.0 +240 0.7381761074066162 0.6317503452301025 0.0 -1.0 0.0 0.0 0.0 -1.0 +229 0.05225306749343872 0.6404299736022949 -0.9999999403953552 9.614553420078664e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395173611934175e-14 0.9999999403953552 +230 0.0 0.6404299736022949 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395173611934175e-14 1.0 +226 0.0 0.6344101428985596 -1.0 9.614554841164136e-08 -7.691645578233874e-07 -7.691645578233874e-07 7.395174289560533e-14 1.0 +228 0.05225306749343872 0.6464495658874512 -1.0 9.614554841164136e-08 0.0 0.0 -0.0 1.0 +231 0.0 0.6464495658874512 -1.0 9.614553420078664e-08 0.0 0.0 -0.0 1.0 +230 0.0 0.6404299736022949 -0.9999999403953552 9.6145541306214e-08 0.0 0.0 -0.0 0.9999999403953552 +216 0.05225306749343872 0.6524693965911865 -1.0 9.614558393877815e-08 0.0 0.0 -0.0 1.0 +232 0.0 0.6524693965911865 -1.0 9.614558393877815e-08 0.0 0.0 -0.0 1.0 +231 0.0 0.6464495658874512 -1.0 9.614558393877815e-08 0.0 0.0 -0.0 1.0 +217 0.05225306749343872 0.6584892272949219 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 1.0 +233 0.0 0.6584892272949219 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 1.0 +232 0.0 0.6524693965911865 -0.9999999403953552 9.6145541306214e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395174289560533e-14 0.9999999403953552 +218 0.05225306749343872 0.6645088195800781 -0.9999999403953552 9.614553420078664e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395173611934175e-14 0.9999999403953552 +234 0.0 0.6645088195800781 -1.0 9.614554841164136e-08 -7.691645009799686e-07 -7.691645009799686e-07 7.395173611934175e-14 1.0 +233 0.0 0.6584892272949219 -1.0 9.614554841164136e-08 -7.691645578233874e-07 -7.691645578233874e-07 7.395174289560533e-14 1.0 +219 0.05225306749343872 0.6705286502838135 -1.0 9.614554841164136e-08 -1.4348132733677035e-20 -6.47162309635671e-14 -6.731067401233304e-07 1.0 +235 0.0 0.6705286502838135 -1.0 9.614553420078664e-08 -1.4348132733677035e-20 -6.471621741103994e-14 -6.731067401233304e-07 1.0 +234 0.0 0.6645088195800781 -0.9999999403953552 9.6145541306214e-08 -1.4348132733677035e-20 -6.471622418730352e-14 -6.731066832799115e-07 0.9999999403953552 +253 0.6859230995178223 0.4271864891052246 -2.1606436462207057e-07 -1.0 -1.7974497268369305e-07 -3.8836484348532194e-14 -1.7974497268369305e-07 1.0 +255 0.6859230995178223 0.4690394401550293 -2.1606436462207057e-07 -1.0 -1.7974498689454776e-07 -3.883648773666398e-14 -1.7974498689454776e-07 1.0 +249 0.5815765261650085 0.4690394401550293 -2.1606437883292529e-07 -1.0 -1.7974497268369305e-07 -3.8836484348532194e-14 -1.7974497268369305e-07 1.0 +220 0.7381761074066162 0.6618490219116211 -4.302795844068896e-07 -1.0 5.456676240877909e-21 -3.84699901329142e-14 1.1096175553001376e-20 -1.0 +248 0.7381760478019714 0.8125201463699341 -4.3027952756347077e-07 -0.9999999403953552 5.456675433084342e-21 -3.8469986744782414e-14 1.1096173129620675e-20 -0.9999999403953552 +250 0.6859230995178223 0.8125201463699341 -4.302795844068896e-07 -1.0 5.456675836981126e-21 -3.84699901329142e-14 1.1096175553001376e-20 -1.0 +251 0.5293235778808594 0.4690394401550293 0.0 -1.0 -1.972652246880791e-20 5.1293293072164625e-14 -1.972652246880791e-20 1.0 +249 0.5815765261650085 0.4690394401550293 0.0 -0.9999999403953552 -1.9726520853220775e-20 5.1293289684032836e-14 -1.9726520853220775e-20 0.9999999403953552 +224 0.5815765857696533 0.6197106838226318 0.0 -1.0 -1.9726519237633642e-20 5.1293293072164625e-14 -1.9726519237633642e-20 1.0 +250 0.0 0.48373889923095703 -1.0 9.61456763093338e-08 1.3267542432411547e-20 -1.2823351220128416e-14 -1.3337432847038144e-07 1.0 +251 0.05225306749343872 0.48373889923095703 -0.9999999403953552 9.61456763093338e-08 1.326754162461798e-20 -1.2823351220128416e-14 -1.3337431425952673e-07 0.9999999403953552 +223 0.05225306749343872 0.6344101428985596 -1.0 9.61456763093338e-08 1.3267543240205114e-20 -1.2823351220128416e-14 -1.3337432847038144e-07 1.0 +254 0.947028636932373 0.9882780313491821 0.0 0.0 -0.9999999403953552 0.9999999403953552 0.0 0.0 +255 0.947028636932373 0.9360250234603882 0.0 0.0 -1.0 1.0 0.0 0.0 +253 0.9888818264007568 0.9360250234603882 0.0 0.0 -1.0 1.0 0.0 0.0 +215 0.9787142276763916 0.5815764665603638 1.0 -2.3035164531393093e-07 -1.2000970173176029e-06 -2.3035164531393093e-07 -1.0 2.7644431340421993e-13 +252 0.9787142276763916 0.6859229803085327 1.0 -2.3035164531393093e-07 -1.2000970173176029e-06 -2.3035164531393093e-07 -1.0 2.7644431340421993e-13 +253 0.9264612197875977 0.6859229803085327 1.0 -2.3035165952478565e-07 -1.2000970173176029e-06 -2.3035165952478565e-07 -1.0 2.7644434050927424e-13 +255 0.38457462191581726 0.973419189453125 -1.0 0.0 0.0 -0.0 -1.0 -1.9258514782904967e-07 +254 0.33232155442237854 0.973419189453125 -1.0 0.0 0.0 -0.0 -1.0 -1.9258514782904967e-07 +248 0.33232155442237854 0.869072675704956 -1.0 0.0 0.0 -0.0 -1.0 -1.9258514782904967e-07 +254 0.8425226211547852 0.8125201463699341 -9.696086777921664e-08 -1.0 0.0 0.0 -0.0 -1.0 +252 0.8425226211547852 0.8543732166290283 -9.696086067378928e-08 -1.0 0.0 0.0 -0.0 -1.0 +215 0.7381760478019714 0.8543732166290283 -9.696086777921664e-08 -1.0 0.0 0.0 -0.0 -1.0 +22 0.2646617889404297 0.3898993730545044 1.0 0.0 0.0 -0.0 0.0 1.0 +23 0.2646617889404297 0.41589272022247314 1.0 0.0 0.0 -0.0 0.0 1.0 +151 0.0 0.41589272022247314 0.9999999403953552 0.0 0.0 -0.0 0.0 0.9999999403953552 +shapeKeys: +Key_1: 0.0 1.0 +0.09925544261932373 0.09925544261932373 8.111547470092773 +0.6571227312088013 0.6571227312088013 6.797300815582275 +0.09925544261932373 -0.09925544261932373 8.111547470092773 +0.6571227312088013 -0.6571227312088013 6.797300815582275 +1.5700029134750366 0.18796256184577942 6.465208530426025 +1.5700029134750366 0.18796256184577942 1.2225744724273682 +1.5700029134750366 -0.18796253204345703 6.465208530426025 +1.5700029134750366 -0.18796253204345703 1.2225744724273682 +1.5700029134750366 -0.18796253204345703 1.530964732170105 +1.5700029134750366 -0.18796253204345703 1.8393549919128418 +1.5700029134750366 -0.18796253204345703 2.147745132446289 +1.5700029134750366 -0.18796253204345703 2.4561352729797363 +1.5700029134750366 -0.18796253204345703 2.7645254135131836 +1.5700029134750366 -0.18796253204345703 3.072915554046631 +1.5700029134750366 -0.18796253204345703 3.3813059329986572 +1.5700029134750366 -0.18796253204345703 3.6896963119506836 +1.5700029134750366 -0.18796253204345703 3.998086452484131 +1.5700029134750366 -0.18796253204345703 4.306476593017578 +1.5700029134750366 -0.18796253204345703 4.614866733551025 +1.5700029134750366 -0.18796253204345703 4.923256874084473 +1.5700029134750366 -0.18796253204345703 5.23164701461792 +1.5700029134750366 -0.18796253204345703 5.540037155151367 +1.5700029134750366 -0.18796253204345703 5.848427772521973 +1.5700029134750366 -0.18796253204345703 6.156818389892578 +1.5700029134750366 0.18796256184577942 6.156818389892578 +1.5700029134750366 0.18796256184577942 5.848428249359131 +1.5700029134750366 0.18796256184577942 5.540038108825684 +1.5700029134750366 0.18796256184577942 5.231647968292236 +1.5700029134750366 0.18796256184577942 4.923257827758789 +1.5700029134750366 0.18796256184577942 4.614867687225342 +1.5700029134750366 0.18796256184577942 4.3064775466918945 +1.5700029134750366 0.18796256184577942 3.998087167739868 +1.5700029134750366 0.18796256184577942 3.689696788787842 +1.5700029134750366 0.18796256184577942 3.3813064098358154 +1.5700029134750366 0.18796256184577942 3.072916030883789 +1.5700029134750366 0.18796256184577942 2.764525890350342 +1.5700029134750366 0.18796256184577942 2.4561355113983154 +1.5700029134750366 0.18796256184577942 2.147745132446289 +1.5700029134750366 0.18796256184577942 1.8393548727035522 +1.5700029134750366 0.18796256184577942 1.5309646129608154 +1.7932260036468506 0.3099707365036011 6.049690246582031 +1.7932260036468506 0.3099707365036011 5.42974853515625 +6.8614630699157715 0.3099707365036011 6.049690246582031 +6.8614630699157715 0.3099707365036011 5.42974853515625 +1.7932260036468506 -0.30997008085250854 6.049690246582031 +1.7932260036468506 -0.30997008085250854 5.42974853515625 +6.8614630699157715 -0.30997008085250854 6.049690246582031 +6.8614630699157715 -0.30997008085250854 5.42974853515625 +4.363054275512695 0.3099707365036011 6.049690246582031 +4.291635036468506 0.3099707365036011 6.049690246582031 +4.220215797424316 0.3099707365036011 6.049690246582031 +4.148796081542969 0.3099707365036011 6.049690246582031 +4.57731294631958 -0.30997008085250854 5.42974853515625 +4.077376842498779 -0.30997008085250854 5.42974853515625 +4.077376842498779 0.3099707365036011 6.049690246582031 +4.57731294631958 0.3099707365036011 6.049690246582031 +4.577312469482422 -0.30997008085250854 6.049690246582031 +4.077376365661621 -0.30997008085250854 6.049690246582031 +4.577312469482422 0.3099707365036011 5.42974853515625 +4.077376365661621 0.3099707365036011 5.42974853515625 +4.434473991394043 0.3099707365036011 6.049690246582031 +4.505893707275391 0.3099707365036011 6.049690246582031 +4.505893230438232 0.3099707365036011 5.42974853515625 +4.434473991394043 0.3099707365036011 5.42974853515625 +4.363054275512695 0.3099707365036011 5.42974853515625 +4.291634559631348 0.3099707365036011 5.42974853515625 +4.220215320587158 0.3099707365036011 5.42974853515625 +4.148796081542969 0.3099707365036011 5.42974853515625 +4.505893707275391 -0.30997008085250854 5.42974853515625 +4.434473991394043 -0.30997008085250854 5.42974853515625 +4.3630547523498535 -0.30997008085250854 5.42974853515625 +4.291635513305664 -0.30997008085250854 5.42974853515625 +4.220215797424316 -0.30997008085250854 5.42974853515625 +4.148796081542969 -0.30997008085250854 5.42974853515625 +4.505893230438232 -0.30997008085250854 6.049690246582031 +4.434473991394043 -0.30997008085250854 6.049690246582031 +4.363054275512695 -0.30997008085250854 6.049690246582031 +4.291634559631348 -0.30997008085250854 6.049690246582031 +4.220215320587158 -0.30997008085250854 6.049690246582031 +4.148796081542969 -0.30997008085250854 6.049690246582031 +1.2785460948944092 0.3099713921546936 0.931412935256958 +0.6586043834686279 0.30997133255004883 0.931412935256958 +1.278545618057251 0.30997204780578613 -4.136824131011963 +0.6586039066314697 0.30997198820114136 -4.136824131011963 +1.2785460948944092 -0.30996936559677124 0.931412935256958 +0.6586043834686279 -0.309969425201416 0.931412935256958 +1.27854585647583 -0.3099687099456787 -4.136824131011963 +0.6586041450500488 -0.3099687695503235 -4.136824131011963 +1.27854585647583 0.30997171998023987 -1.6384153366088867 +1.27854585647583 0.30997171998023987 -1.5669960975646973 +1.27854585647583 0.30997171998023987 -1.4955768585205078 +1.27854585647583 0.3099716901779175 -1.4241571426391602 +0.6586041450500488 -0.30996906757354736 -1.8526740074157715 +0.6586041450500488 -0.30996912717819214 -1.3527379035949707 +1.27854585647583 0.3099716901779175 -1.3527379035949707 +1.27854585647583 0.30997174978256226 -1.8526740074157715 +1.27854585647583 -0.3099690079689026 -1.8526735305786133 +1.27854585647583 -0.30996906757354736 -1.3527374267578125 +0.6586041450500488 0.3099716901779175 -1.8526735305786133 +0.6586041450500488 0.3099716305732727 -1.3527374267578125 +1.27854585647583 0.30997171998023987 -1.7098350524902344 +1.27854585647583 0.30997174978256226 -1.781254768371582 +0.6586041450500488 0.3099716901779175 -1.7812542915344238 +0.6586041450500488 0.3099716603755951 -1.7098350524902344 +0.6586041450500488 0.3099716603755951 -1.6384153366088867 +0.6586041450500488 0.3099716603755951 -1.566995620727539 +0.6586041450500488 0.3099716603755951 -1.4955763816833496 +0.6586041450500488 0.3099716305732727 -1.4241571426391602 +0.6586041450500488 -0.30996906757354736 -1.781254768371582 +0.6586041450500488 -0.30996909737586975 -1.7098350524902344 +0.6586041450500488 -0.30996909737586975 -1.638415813446045 +0.6586041450500488 -0.30996909737586975 -1.5669965744018555 +0.6586041450500488 -0.30996909737586975 -1.4955768585205078 +0.6586041450500488 -0.30996912717819214 -1.4241571426391602 +1.27854585647583 -0.3099690079689026 -1.7812542915344238 +1.27854585647583 -0.309969037771225 -1.7098350524902344 +1.27854585647583 -0.309969037771225 -1.6384153366088867 +1.27854585647583 -0.309969037771225 -1.566995620727539 +1.27854585647583 -0.309969037771225 -1.4955763816833496 +1.27854585647583 -0.30996906757354736 -1.4241571426391602 +0.6586041450500488 -0.30996882915496826 -3.6402697563171387 +1.27854585647583 -0.3099687695503235 -3.6402697563171387 +0.6586039662361145 0.3099719285964966 -3.6402697563171387 +1.278545618057251 0.30997198820114136 -3.6402697563171387 +0.6586042642593384 -1.547959327697754 -4.136824131011963 +1.2785459756851196 -1.5479592084884644 -4.136824131011963 +0.6586042642593384 -1.547959327697754 -3.6402699947357178 +1.2785459756851196 -1.547959327697754 -3.6402699947357178 +-0.09925544261932373 0.09925544261932373 8.111547470092773 +-0.6571227312088013 0.6571227312088013 6.797300815582275 +-0.09925544261932373 -0.09925544261932373 8.111547470092773 +-0.6571227312088013 -0.6571227312088013 6.797300815582275 +-1.5700029134750366 0.18796256184577942 6.465208530426025 +-1.5700029134750366 0.18796256184577942 1.2225744724273682 +-1.5700029134750366 -0.18796253204345703 6.465208530426025 +-1.5700029134750366 -0.18796253204345703 1.2225744724273682 +-1.5700029134750366 -0.18796253204345703 1.530964732170105 +-1.5700029134750366 -0.18796253204345703 1.8393549919128418 +-1.5700029134750366 -0.18796253204345703 2.147745132446289 +-1.5700029134750366 -0.18796253204345703 2.4561352729797363 +-1.5700029134750366 -0.18796253204345703 2.7645254135131836 +-1.5700029134750366 -0.18796253204345703 3.072915554046631 +-1.5700029134750366 -0.18796253204345703 3.3813059329986572 +-1.5700029134750366 -0.18796253204345703 3.6896963119506836 +-1.5700029134750366 -0.18796253204345703 3.998086452484131 +-1.5700029134750366 -0.18796253204345703 4.306476593017578 +-1.5700029134750366 -0.18796253204345703 4.614866733551025 +-1.5700029134750366 -0.18796253204345703 4.923256874084473 +-1.5700029134750366 -0.18796253204345703 5.23164701461792 +-1.5700029134750366 -0.18796253204345703 5.540037155151367 +-1.5700029134750366 -0.18796253204345703 5.848427772521973 +-1.5700029134750366 -0.18796253204345703 6.156818389892578 +-1.5700029134750366 0.18796256184577942 6.156818389892578 +-1.5700029134750366 0.18796256184577942 5.848428249359131 +-1.5700029134750366 0.18796256184577942 5.540038108825684 +-1.5700029134750366 0.18796256184577942 5.231647968292236 +-1.5700029134750366 0.18796256184577942 4.923257827758789 +-1.5700029134750366 0.18796256184577942 4.614867687225342 +-1.5700029134750366 0.18796256184577942 4.3064775466918945 +-1.5700029134750366 0.18796256184577942 3.998087167739868 +-1.5700029134750366 0.18796256184577942 3.689696788787842 +-1.5700029134750366 0.18796256184577942 3.3813064098358154 +-1.5700029134750366 0.18796256184577942 3.072916030883789 +-1.5700029134750366 0.18796256184577942 2.764525890350342 +-1.5700029134750366 0.18796256184577942 2.4561355113983154 +-1.5700029134750366 0.18796256184577942 2.147745132446289 +-1.5700029134750366 0.18796256184577942 1.8393548727035522 +-1.5700029134750366 0.18796256184577942 1.5309646129608154 +-1.7932260036468506 0.3099707365036011 6.049690246582031 +-1.7932260036468506 0.3099707365036011 5.42974853515625 +-6.8614630699157715 0.3099707365036011 6.049690246582031 +-6.8614630699157715 0.3099707365036011 5.42974853515625 +-1.7932260036468506 -0.30997008085250854 6.049690246582031 +-1.7932260036468506 -0.30997008085250854 5.42974853515625 +-6.8614630699157715 -0.30997008085250854 6.049690246582031 +-6.8614630699157715 -0.30997008085250854 5.42974853515625 +-4.363054275512695 0.3099707365036011 6.049690246582031 +-4.291635036468506 0.3099707365036011 6.049690246582031 +-4.220215797424316 0.3099707365036011 6.049690246582031 +-4.148796081542969 0.3099707365036011 6.049690246582031 +-4.57731294631958 -0.30997008085250854 5.42974853515625 +-4.077376842498779 -0.30997008085250854 5.42974853515625 +-4.077376842498779 0.3099707365036011 6.049690246582031 +-4.57731294631958 0.3099707365036011 6.049690246582031 +-4.577312469482422 -0.30997008085250854 6.049690246582031 +-4.077376365661621 -0.30997008085250854 6.049690246582031 +-4.577312469482422 0.3099707365036011 5.42974853515625 +-4.077376365661621 0.3099707365036011 5.42974853515625 +-4.434473991394043 0.3099707365036011 6.049690246582031 +-4.505893707275391 0.3099707365036011 6.049690246582031 +-4.505893230438232 0.3099707365036011 5.42974853515625 +-4.434473991394043 0.3099707365036011 5.42974853515625 +-4.363054275512695 0.3099707365036011 5.42974853515625 +-4.291634559631348 0.3099707365036011 5.42974853515625 +-4.220215320587158 0.3099707365036011 5.42974853515625 +-4.148796081542969 0.3099707365036011 5.42974853515625 +-4.505893707275391 -0.30997008085250854 5.42974853515625 +-4.434473991394043 -0.30997008085250854 5.42974853515625 +-4.3630547523498535 -0.30997008085250854 5.42974853515625 +-4.291635513305664 -0.30997008085250854 5.42974853515625 +-4.220215797424316 -0.30997008085250854 5.42974853515625 +-4.148796081542969 -0.30997008085250854 5.42974853515625 +-4.505893230438232 -0.30997008085250854 6.049690246582031 +-4.434473991394043 -0.30997008085250854 6.049690246582031 +-4.363054275512695 -0.30997008085250854 6.049690246582031 +-4.291634559631348 -0.30997008085250854 6.049690246582031 +-4.220215320587158 -0.30997008085250854 6.049690246582031 +-4.148796081542969 -0.30997008085250854 6.049690246582031 +-1.2785460948944092 0.3099713921546936 0.931412935256958 +-0.6586043834686279 0.30997133255004883 0.931412935256958 +-1.278545618057251 0.30997204780578613 -4.136824131011963 +-0.6586039066314697 0.30997198820114136 -4.136824131011963 +-1.2785460948944092 -0.30996936559677124 0.931412935256958 +-0.6586043834686279 -0.309969425201416 0.931412935256958 +-1.27854585647583 -0.3099687099456787 -4.136824131011963 +-0.6586041450500488 -0.3099687695503235 -4.136824131011963 +-1.27854585647583 0.30997171998023987 -1.6384153366088867 +-1.27854585647583 0.30997171998023987 -1.5669960975646973 +-1.27854585647583 0.30997171998023987 -1.4955768585205078 +-1.27854585647583 0.3099716901779175 -1.4241571426391602 +-0.6586041450500488 -0.30996906757354736 -1.8526740074157715 +-0.6586041450500488 -0.30996912717819214 -1.3527379035949707 +-1.27854585647583 0.3099716901779175 -1.3527379035949707 +-1.27854585647583 0.30997174978256226 -1.8526740074157715 +-1.27854585647583 -0.3099690079689026 -1.8526735305786133 +-1.27854585647583 -0.30996906757354736 -1.3527374267578125 +-0.6586041450500488 0.3099716901779175 -1.8526735305786133 +-0.6586041450500488 0.3099716305732727 -1.3527374267578125 +-1.27854585647583 0.30997171998023987 -1.7098350524902344 +-1.27854585647583 0.30997174978256226 -1.781254768371582 +-0.6586041450500488 0.3099716901779175 -1.7812542915344238 +-0.6586041450500488 0.3099716603755951 -1.7098350524902344 +-0.6586041450500488 0.3099716603755951 -1.6384153366088867 +-0.6586041450500488 0.3099716603755951 -1.566995620727539 +-0.6586041450500488 0.3099716603755951 -1.4955763816833496 +-0.6586041450500488 0.3099716305732727 -1.4241571426391602 +-0.6586041450500488 -0.30996906757354736 -1.781254768371582 +-0.6586041450500488 -0.30996909737586975 -1.7098350524902344 +-0.6586041450500488 -0.30996909737586975 -1.638415813446045 +-0.6586041450500488 -0.30996909737586975 -1.5669965744018555 +-0.6586041450500488 -0.30996909737586975 -1.4955768585205078 +-0.6586041450500488 -0.30996912717819214 -1.4241571426391602 +-1.27854585647583 -0.3099690079689026 -1.7812542915344238 +-1.27854585647583 -0.309969037771225 -1.7098350524902344 +-1.27854585647583 -0.309969037771225 -1.6384153366088867 +-1.27854585647583 -0.309969037771225 -1.566995620727539 +-1.27854585647583 -0.309969037771225 -1.4955763816833496 +-1.27854585647583 -0.30996906757354736 -1.4241571426391602 +-0.6586041450500488 -0.30996882915496826 -3.6402697563171387 +-1.27854585647583 -0.3099687695503235 -3.6402697563171387 +-0.6586039662361145 0.3099719285964966 -3.6402697563171387 +-1.278545618057251 0.30997198820114136 -3.6402697563171387 +-0.6586042642593384 -1.547959327697754 -4.136824131011963 +-1.2785459756851196 -1.5479592084884644 -4.136824131011963 +-0.6586042642593384 -1.547959327697754 -3.6402699947357178 +-1.2785459756851196 -1.547959327697754 -3.6402699947357178 +Key_2: 0.0 1.0 +0.6571227312088013 0.6571227312088013 8.111547470092773 +0.09430581331253052 0.09430581331253052 6.797300815582275 +0.6571227312088013 -0.6571227312088013 8.111547470092773 +0.09430581331253052 -0.09430581331253052 6.797300815582275 +1.5700029134750366 0.18796256184577942 6.465208530426025 +1.5700029134750366 0.18796256184577942 1.2225744724273682 +1.5700029134750366 -0.18796253204345703 6.465208530426025 +1.5700029134750366 -0.18796253204345703 1.2225744724273682 +1.5700029134750366 -0.18796253204345703 1.530964732170105 +1.5700029134750366 -0.18796253204345703 1.8393549919128418 +1.5700029134750366 -0.18796253204345703 2.147745132446289 +1.5700029134750366 -0.18796253204345703 2.4561352729797363 +1.5700029134750366 -0.18796253204345703 2.7645254135131836 +1.5700029134750366 -0.18796253204345703 3.072915554046631 +1.5700029134750366 -0.18796253204345703 3.3813059329986572 +1.5700029134750366 -0.18796253204345703 3.6896963119506836 +1.5700029134750366 -0.18796253204345703 3.998086452484131 +1.5700029134750366 -0.18796253204345703 4.306476593017578 +1.5700029134750366 -0.18796253204345703 4.614866733551025 +1.5700029134750366 -0.18796253204345703 4.923256874084473 +1.5700029134750366 -0.18796253204345703 5.23164701461792 +1.5700029134750366 -0.18796253204345703 5.540037155151367 +1.5700029134750366 -0.18796253204345703 5.848427772521973 +1.5700029134750366 -0.18796253204345703 6.156818389892578 +1.5700029134750366 0.18796256184577942 6.156818389892578 +1.5700029134750366 0.18796256184577942 5.848428249359131 +1.5700029134750366 0.18796256184577942 5.540038108825684 +1.5700029134750366 0.18796256184577942 5.231647968292236 +1.5700029134750366 0.18796256184577942 4.923257827758789 +1.5700029134750366 0.18796256184577942 4.614867687225342 +1.5700029134750366 0.18796256184577942 4.3064775466918945 +1.5700029134750366 0.18796256184577942 3.998087167739868 +1.5700029134750366 0.18796256184577942 3.689696788787842 +1.5700029134750366 0.18796256184577942 3.3813064098358154 +1.5700029134750366 0.18796256184577942 3.072916030883789 +1.5700029134750366 0.18796256184577942 2.764525890350342 +1.5700029134750366 0.18796256184577942 2.4561355113983154 +1.5700029134750366 0.18796256184577942 2.147745132446289 +1.5700029134750366 0.18796256184577942 1.8393548727035522 +1.5700029134750366 0.18796256184577942 1.5309646129608154 +1.7932260036468506 0.3099707365036011 6.049690246582031 +1.7932260036468506 0.3099707365036011 5.42974853515625 +6.8614630699157715 0.3099707365036011 6.049690246582031 +6.8614630699157715 0.3099707365036011 5.42974853515625 +1.7932260036468506 -0.30997008085250854 6.049690246582031 +1.7932260036468506 -0.30997008085250854 5.42974853515625 +6.8614630699157715 -0.30997008085250854 6.049690246582031 +6.8614630699157715 -0.30997008085250854 5.42974853515625 +4.363054275512695 0.3099707365036011 6.049690246582031 +4.291635036468506 0.3099707365036011 6.049690246582031 +4.220215797424316 0.3099707365036011 6.049690246582031 +4.148796081542969 0.3099707365036011 6.049690246582031 +4.57731294631958 -0.30997008085250854 5.42974853515625 +4.077376842498779 -0.30997008085250854 5.42974853515625 +4.077376842498779 0.3099707365036011 6.049690246582031 +4.57731294631958 0.3099707365036011 6.049690246582031 +4.577312469482422 -0.30997008085250854 6.049690246582031 +4.077376365661621 -0.30997008085250854 6.049690246582031 +4.577312469482422 0.3099707365036011 5.42974853515625 +4.077376365661621 0.3099707365036011 5.42974853515625 +4.434473991394043 0.3099707365036011 6.049690246582031 +4.505893707275391 0.3099707365036011 6.049690246582031 +4.505893230438232 0.3099707365036011 5.42974853515625 +4.434473991394043 0.3099707365036011 5.42974853515625 +4.363054275512695 0.3099707365036011 5.42974853515625 +4.291634559631348 0.3099707365036011 5.42974853515625 +4.220215320587158 0.3099707365036011 5.42974853515625 +4.148796081542969 0.3099707365036011 5.42974853515625 +4.505893707275391 -0.30997008085250854 5.42974853515625 +4.434473991394043 -0.30997008085250854 5.42974853515625 +4.3630547523498535 -0.30997008085250854 5.42974853515625 +4.291635513305664 -0.30997008085250854 5.42974853515625 +4.220215797424316 -0.30997008085250854 5.42974853515625 +4.148796081542969 -0.30997008085250854 5.42974853515625 +4.505893230438232 -0.30997008085250854 6.049690246582031 +4.434473991394043 -0.30997008085250854 6.049690246582031 +4.363054275512695 -0.30997008085250854 6.049690246582031 +4.291634559631348 -0.30997008085250854 6.049690246582031 +4.220215320587158 -0.30997008085250854 6.049690246582031 +4.148796081542969 -0.30997008085250854 6.049690246582031 +1.2785460948944092 0.3099713921546936 0.931412935256958 +0.6586043834686279 0.30997133255004883 0.931412935256958 +1.278545618057251 0.30997204780578613 -4.136824131011963 +0.6586039066314697 0.30997198820114136 -4.136824131011963 +1.2785460948944092 -0.30996936559677124 0.931412935256958 +0.6586043834686279 -0.309969425201416 0.931412935256958 +1.27854585647583 -0.3099687099456787 -4.136824131011963 +0.6586041450500488 -0.3099687695503235 -4.136824131011963 +1.27854585647583 0.30997171998023987 -1.6384153366088867 +1.27854585647583 0.30997171998023987 -1.5669960975646973 +1.27854585647583 0.30997171998023987 -1.4955768585205078 +1.27854585647583 0.3099716901779175 -1.4241571426391602 +0.6586041450500488 -0.30996906757354736 -1.8526740074157715 +0.6586041450500488 -0.30996912717819214 -1.3527379035949707 +1.27854585647583 0.3099716901779175 -1.3527379035949707 +1.27854585647583 0.30997174978256226 -1.8526740074157715 +1.27854585647583 -0.3099690079689026 -1.8526735305786133 +1.27854585647583 -0.30996906757354736 -1.3527374267578125 +0.6586041450500488 0.3099716901779175 -1.8526735305786133 +0.6586041450500488 0.3099716305732727 -1.3527374267578125 +1.27854585647583 0.30997171998023987 -1.7098350524902344 +1.27854585647583 0.30997174978256226 -1.781254768371582 +0.6586041450500488 0.3099716901779175 -1.7812542915344238 +0.6586041450500488 0.3099716603755951 -1.7098350524902344 +0.6586041450500488 0.3099716603755951 -1.6384153366088867 +0.6586041450500488 0.3099716603755951 -1.566995620727539 +0.6586041450500488 0.3099716603755951 -1.4955763816833496 +0.6586041450500488 0.3099716305732727 -1.4241571426391602 +0.6586041450500488 -0.30996906757354736 -1.781254768371582 +0.6586041450500488 -0.30996909737586975 -1.7098350524902344 +0.6586041450500488 -0.30996909737586975 -1.638415813446045 +0.6586041450500488 -0.30996909737586975 -1.5669965744018555 +0.6586041450500488 -0.30996909737586975 -1.4955768585205078 +0.6586041450500488 -0.30996912717819214 -1.4241571426391602 +1.27854585647583 -0.3099690079689026 -1.7812542915344238 +1.27854585647583 -0.309969037771225 -1.7098350524902344 +1.27854585647583 -0.309969037771225 -1.6384153366088867 +1.27854585647583 -0.309969037771225 -1.566995620727539 +1.27854585647583 -0.309969037771225 -1.4955763816833496 +1.27854585647583 -0.30996906757354736 -1.4241571426391602 +0.6586041450500488 -0.30996882915496826 -3.6402697563171387 +1.27854585647583 -0.3099687695503235 -3.6402697563171387 +0.6586039662361145 0.3099719285964966 -3.6402697563171387 +1.278545618057251 0.30997198820114136 -3.6402697563171387 +0.6586042642593384 -1.547959327697754 -4.136824131011963 +1.2785459756851196 -1.5479592084884644 -4.136824131011963 +0.6586042642593384 -1.547959327697754 -3.6402699947357178 +1.2785459756851196 -1.547959327697754 -3.6402699947357178 +-0.6571227312088013 0.6571227312088013 8.111547470092773 +-0.09430581331253052 0.09430581331253052 6.797300815582275 +-0.6571227312088013 -0.6571227312088013 8.111547470092773 +-0.09430581331253052 -0.09430581331253052 6.797300815582275 +-1.5700029134750366 0.18796256184577942 6.465208530426025 +-1.5700029134750366 0.18796256184577942 1.2225744724273682 +-1.5700029134750366 -0.18796253204345703 6.465208530426025 +-1.5700029134750366 -0.18796253204345703 1.2225744724273682 +-1.5700029134750366 -0.18796253204345703 1.530964732170105 +-1.5700029134750366 -0.18796253204345703 1.8393549919128418 +-1.5700029134750366 -0.18796253204345703 2.147745132446289 +-1.5700029134750366 -0.18796253204345703 2.4561352729797363 +-1.5700029134750366 -0.18796253204345703 2.7645254135131836 +-1.5700029134750366 -0.18796253204345703 3.072915554046631 +-1.5700029134750366 -0.18796253204345703 3.3813059329986572 +-1.5700029134750366 -0.18796253204345703 3.6896963119506836 +-1.5700029134750366 -0.18796253204345703 3.998086452484131 +-1.5700029134750366 -0.18796253204345703 4.306476593017578 +-1.5700029134750366 -0.18796253204345703 4.614866733551025 +-1.5700029134750366 -0.18796253204345703 4.923256874084473 +-1.5700029134750366 -0.18796253204345703 5.23164701461792 +-1.5700029134750366 -0.18796253204345703 5.540037155151367 +-1.5700029134750366 -0.18796253204345703 5.848427772521973 +-1.5700029134750366 -0.18796253204345703 6.156818389892578 +-1.5700029134750366 0.18796256184577942 6.156818389892578 +-1.5700029134750366 0.18796256184577942 5.848428249359131 +-1.5700029134750366 0.18796256184577942 5.540038108825684 +-1.5700029134750366 0.18796256184577942 5.231647968292236 +-1.5700029134750366 0.18796256184577942 4.923257827758789 +-1.5700029134750366 0.18796256184577942 4.614867687225342 +-1.5700029134750366 0.18796256184577942 4.3064775466918945 +-1.5700029134750366 0.18796256184577942 3.998087167739868 +-1.5700029134750366 0.18796256184577942 3.689696788787842 +-1.5700029134750366 0.18796256184577942 3.3813064098358154 +-1.5700029134750366 0.18796256184577942 3.072916030883789 +-1.5700029134750366 0.18796256184577942 2.764525890350342 +-1.5700029134750366 0.18796256184577942 2.4561355113983154 +-1.5700029134750366 0.18796256184577942 2.147745132446289 +-1.5700029134750366 0.18796256184577942 1.8393548727035522 +-1.5700029134750366 0.18796256184577942 1.5309646129608154 +-1.7932260036468506 0.3099707365036011 6.049690246582031 +-1.7932260036468506 0.3099707365036011 5.42974853515625 +-6.8614630699157715 0.3099707365036011 6.049690246582031 +-6.8614630699157715 0.3099707365036011 5.42974853515625 +-1.7932260036468506 -0.30997008085250854 6.049690246582031 +-1.7932260036468506 -0.30997008085250854 5.42974853515625 +-6.8614630699157715 -0.30997008085250854 6.049690246582031 +-6.8614630699157715 -0.30997008085250854 5.42974853515625 +-4.363054275512695 0.3099707365036011 6.049690246582031 +-4.291635036468506 0.3099707365036011 6.049690246582031 +-4.220215797424316 0.3099707365036011 6.049690246582031 +-4.148796081542969 0.3099707365036011 6.049690246582031 +-4.57731294631958 -0.30997008085250854 5.42974853515625 +-4.077376842498779 -0.30997008085250854 5.42974853515625 +-4.077376842498779 0.3099707365036011 6.049690246582031 +-4.57731294631958 0.3099707365036011 6.049690246582031 +-4.577312469482422 -0.30997008085250854 6.049690246582031 +-4.077376365661621 -0.30997008085250854 6.049690246582031 +-4.577312469482422 0.3099707365036011 5.42974853515625 +-4.077376365661621 0.3099707365036011 5.42974853515625 +-4.434473991394043 0.3099707365036011 6.049690246582031 +-4.505893707275391 0.3099707365036011 6.049690246582031 +-4.505893230438232 0.3099707365036011 5.42974853515625 +-4.434473991394043 0.3099707365036011 5.42974853515625 +-4.363054275512695 0.3099707365036011 5.42974853515625 +-4.291634559631348 0.3099707365036011 5.42974853515625 +-4.220215320587158 0.3099707365036011 5.42974853515625 +-4.148796081542969 0.3099707365036011 5.42974853515625 +-4.505893707275391 -0.30997008085250854 5.42974853515625 +-4.434473991394043 -0.30997008085250854 5.42974853515625 +-4.3630547523498535 -0.30997008085250854 5.42974853515625 +-4.291635513305664 -0.30997008085250854 5.42974853515625 +-4.220215797424316 -0.30997008085250854 5.42974853515625 +-4.148796081542969 -0.30997008085250854 5.42974853515625 +-4.505893230438232 -0.30997008085250854 6.049690246582031 +-4.434473991394043 -0.30997008085250854 6.049690246582031 +-4.363054275512695 -0.30997008085250854 6.049690246582031 +-4.291634559631348 -0.30997008085250854 6.049690246582031 +-4.220215320587158 -0.30997008085250854 6.049690246582031 +-4.148796081542969 -0.30997008085250854 6.049690246582031 +-1.2785460948944092 0.3099713921546936 0.931412935256958 +-0.6586043834686279 0.30997133255004883 0.931412935256958 +-1.278545618057251 0.30997204780578613 -4.136824131011963 +-0.6586039066314697 0.30997198820114136 -4.136824131011963 +-1.2785460948944092 -0.30996936559677124 0.931412935256958 +-0.6586043834686279 -0.309969425201416 0.931412935256958 +-1.27854585647583 -0.3099687099456787 -4.136824131011963 +-0.6586041450500488 -0.3099687695503235 -4.136824131011963 +-1.27854585647583 0.30997171998023987 -1.6384153366088867 +-1.27854585647583 0.30997171998023987 -1.5669960975646973 +-1.27854585647583 0.30997171998023987 -1.4955768585205078 +-1.27854585647583 0.3099716901779175 -1.4241571426391602 +-0.6586041450500488 -0.30996906757354736 -1.8526740074157715 +-0.6586041450500488 -0.30996912717819214 -1.3527379035949707 +-1.27854585647583 0.3099716901779175 -1.3527379035949707 +-1.27854585647583 0.30997174978256226 -1.8526740074157715 +-1.27854585647583 -0.3099690079689026 -1.8526735305786133 +-1.27854585647583 -0.30996906757354736 -1.3527374267578125 +-0.6586041450500488 0.3099716901779175 -1.8526735305786133 +-0.6586041450500488 0.3099716305732727 -1.3527374267578125 +-1.27854585647583 0.30997171998023987 -1.7098350524902344 +-1.27854585647583 0.30997174978256226 -1.781254768371582 +-0.6586041450500488 0.3099716901779175 -1.7812542915344238 +-0.6586041450500488 0.3099716603755951 -1.7098350524902344 +-0.6586041450500488 0.3099716603755951 -1.6384153366088867 +-0.6586041450500488 0.3099716603755951 -1.566995620727539 +-0.6586041450500488 0.3099716603755951 -1.4955763816833496 +-0.6586041450500488 0.3099716305732727 -1.4241571426391602 +-0.6586041450500488 -0.30996906757354736 -1.781254768371582 +-0.6586041450500488 -0.30996909737586975 -1.7098350524902344 +-0.6586041450500488 -0.30996909737586975 -1.638415813446045 +-0.6586041450500488 -0.30996909737586975 -1.5669965744018555 +-0.6586041450500488 -0.30996909737586975 -1.4955768585205078 +-0.6586041450500488 -0.30996912717819214 -1.4241571426391602 +-1.27854585647583 -0.3099690079689026 -1.7812542915344238 +-1.27854585647583 -0.309969037771225 -1.7098350524902344 +-1.27854585647583 -0.309969037771225 -1.6384153366088867 +-1.27854585647583 -0.309969037771225 -1.566995620727539 +-1.27854585647583 -0.309969037771225 -1.4955763816833496 +-1.27854585647583 -0.30996906757354736 -1.4241571426391602 +-0.6586041450500488 -0.30996882915496826 -3.6402697563171387 +-1.27854585647583 -0.3099687695503235 -3.6402697563171387 +-0.6586039662361145 0.3099719285964966 -3.6402697563171387 +-1.278545618057251 0.30997198820114136 -3.6402697563171387 +-0.6586042642593384 -1.547959327697754 -4.136824131011963 +-1.2785459756851196 -1.5479592084884644 -4.136824131011963 +-0.6586042642593384 -1.547959327697754 -3.6402699947357178 +-1.2785459756851196 -1.547959327697754 -3.6402699947357178 +animations: 0 +drivers: 2 +Armature bone LOC_Y +Key_1 shape_key_value 2 +0.0 0.0 2 -0.3333333432674408 -0.3333333432674408 0.3333333432674408 0.3333333432674408 +1.0 1.0 2 0.6666666269302368 0.6666666269302368 1.3333333730697632 1.3333333730697632 +Armature bone LOC_Z +Key_2 shape_key_value 2 +0.0 0.0 2 -0.3333333432674408 -0.3333333432674408 0.3333333432674408 0.3333333432674408 +1.0 1.0 2 0.6666666269302368 0.6666666269302368 1.3333333730697632 1.3333333730697632 +} +{ +ARMATURE: Armature +pos: 0.0 0.0 0.0 +rot: 1.0 0.0 0.0 -0.0 +scale: 1.0 1.0 1.0 +parent: - +bones: 23 2 +rootBone: None 1.0 0.0 0.0 0.0 1.0 0.0 0.0 0.0 0.0 1.0 - -1 +pelvis: rootBone 1.0 0.0 0.3507668972015381 0.0 1.0 0.0 0.0 0.0 1.0 0.0 - -1 +chest: pelvis 3.94878888130188 0.0 0.0 0.0 1.0 0.0 -2.3841855067985307e-07 0.0 0.9999999403953552 0.0 - -1 +upperArm.L: chest 2.340176582336426 2.009032726287842 -0.5237346291542053 9.48112585774652e-07 3.4551602166388654e-14 -1.0 -4.013393208879279e-07 1.0 0.0 1.250607368774581e-07 elbowIK.L 1 +lowerArm.L: upperArm.L 2.340176582336426 0.0 0.0 0.0 1.0 2.8956206570952076e-21 1.758381993557046e-35 -2.8956206570952076e-21 1.0 1.2145113304537058e-14 handIK.L 2 +upperArm.R: chest 2.340176582336426 -2.009032726287842 -0.5237346291542053 -9.868756478681462e-09 -2.6492827029378496e-13 1.0 4.013392356227996e-07 -1.0 0.0 -3.5177637869310274e-07 elbowIK.R 1 +lowerArm.R: upperArm.R 2.340176582336426 0.0 0.0 -0.0 1.0 -5.791243333674333e-21 8.526512829121202e-14 5.791241314190415e-21 1.0 2.4290226609074116e-14 handIK.R 2 +head: chest 1.240873098373413 0.0 0.5339484810829163 0.0 1.0 0.0 -2.842170943040401e-14 0.0 1.0 0.0 - -1 +bone: head 1.2408729791641235 -5.185282248021394e-07 -1.2408729791641235 2.1748650074005127 1.0 0.0 0.0 0.0 1.0 0.0 - -1 +upperLeg.L: pelvis 2.336160898208618 0.9621803760528564 -1.5195772647857666 -6.98098077123177e-08 1.0 5.0279164241339575e-15 -8.742277657347586e-08 -5.0279164241339575e-15 -1.0 -1.1502532260010412e-07 kneeIK.L 1 +lowerLeg.L: upperLeg.L 2.336160898208618 0.0 0.0 0.0 1.0 2.551392697114352e-08 -6.190884960233234e-08 -2.5513930523857198e-08 1.0 -5.751265774733838e-08 footIK.L 2 +foot.L: lowerLeg.L 1.5010014772415161 0.0 0.0 0.0 1.0 6.190884960233234e-08 -2.5513932300214037e-08 -2.551392874750036e-08 -5.751266485276574e-08 -1.0 - -1 +upperLeg.R: pelvis 2.336160898208618 -0.9621803760528564 -1.5195772647857666 -6.98098077123177e-08 1.0 5.0279164241339575e-15 -8.742277657347586e-08 -5.0279164241339575e-15 -1.0 -1.1502532260010412e-07 kneeIK.R 1 +lowerLeg.R: upperLeg.R 2.336160898208618 0.0 0.0 0.0 1.0 -2.5513937629284555e-08 -1.1293670354461938e-07 2.5513930523857198e-08 1.0 -5.751265774733838e-08 footIK.R 2 +foot.R: lowerLeg.R 1.5010014772415161 0.0 0.0 0.0 1.0 -6.190884960233234e-08 2.5513932300214037e-08 2.551392874750036e-08 -5.751266840547942e-08 -1.0 - -1 +handIK.L: rootBone 1.0 6.689385890960693 4.775821208953857 -6.143267228253535e-08 0.0 -1.0 -4.0133929246621847e-07 1.0 0.0 0.0 - -1 +elbowIK.L: rootBone 1.0 4.349209308624268 4.775821208953857 2.0384462118272495e-07 -4.0133926404450904e-07 -1.0 0.0 0.0 0.0 -0.9999999403953552 - -1 +kneeIK.L: rootBone 1.0 0.9621803760528564 -2.5049712657928467 -2.0416864288108627e-07 1.0 -8.742277657347586e-08 0.0 0.0 0.0 1.0 - -1 +footIK.L: rootBone 2.832528829574585 0.9621803164482117 -4.841132164001465 -3.385274851552822e-07 1.0 -3.2584136988589307e-07 0.0 0.0 0.0 1.0 - -1 +handIK.R: rootBone 1.0 -6.689385890960693 4.775821208953857 -6.143267228253535e-08 0.0 1.0 4.0133929246621847e-07 -1.0 0.0 0.0 - -1 +elbowIK.R: rootBone 1.0 -4.349209308624268 4.775821208953857 2.0384462118272495e-07 -4.0133926404450904e-07 1.0 0.0 0.0 0.0 -0.9999999403953552 - -1 +kneeIK.R: rootBone 1.0 -0.9621803760528564 -2.5049712657928467 -2.0416864288108627e-07 1.0 8.742277657347586e-08 0.0 0.0 0.0 1.0 - -1 +footIK.R: rootBone 2.832528829574585 -0.9621803164482117 -4.841132164001465 -3.385274851552822e-07 1.0 3.2584136988589307e-07 0.0 0.0 0.0 1.0 - -1 +animations: 2 +animation: morph 7 +bone pos_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +bone pos_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.9426789283752441 30.0 2 0.9426789283752441 20.333332061767578 0.9426789283752441 40.0 +0.9426789283752441 60.0 2 0.9426789283752441 50.0 0.9426789283752441 70.0 +bone pos_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.8508896231651306 60.0 2 0.8508896231651306 50.0 0.8508896231651306 70.0 +bone rot_w 3 +1.0 1.0 2 1.0 -8.666666984558105 1.0 10.666666984558105 +1.0 30.0 2 1.0 20.333332061767578 1.0 40.0 +1.0 60.0 2 1.0 50.0 1.0 70.0 +bone rot_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +bone rot_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +bone rot_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +animation: righArmAnim 14 +handIK.R pos_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +8.208473900594981e-07 30.0 2 8.208473900594981e-07 20.333332061767578 8.208473900594981e-07 40.0 +8.208473900594981e-07 60.0 2 8.208473900594981e-07 50.0 8.208473900594981e-07 70.0 +handIK.R pos_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +-3.4185240268707275 30.0 2 -3.4185240268707275 20.333332061767578 -3.4185240268707275 40.0 +-3.4185240268707275 60.0 2 -3.4185240268707275 50.0 -3.4185240268707275 70.0 +handIK.R pos_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +2.0452704429626465 30.0 2 2.0452704429626465 20.333332061767578 2.0452704429626465 40.0 +2.0452704429626465 60.0 2 2.0452704429626465 50.0 2.0452704429626465 70.0 +handIK.R rot_w 3 +1.0 1.0 2 1.0 -8.666666984558105 1.0 10.666666984558105 +1.0 30.0 2 1.0 20.333332061767578 1.0 40.0 +1.0 60.0 2 1.0 50.0 1.0 70.0 +handIK.R rot_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +handIK.R rot_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +handIK.R rot_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +elbowIK.R pos_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +-5.981714725494385 60.0 2 -5.981714725494385 50.0 -5.981714725494385 70.0 +elbowIK.R pos_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +elbowIK.R pos_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +2.4006972125789616e-06 60.0 2 2.4006972125789616e-06 50.0 2.4006972125789616e-06 70.0 +elbowIK.R rot_w 3 +1.0 1.0 2 1.0 -8.666666984558105 1.0 10.666666984558105 +1.0 30.0 2 1.0 20.333332061767578 1.0 40.0 +1.0 60.0 2 1.0 50.0 1.0 70.0 +elbowIK.R rot_x 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +elbowIK.R rot_y 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +elbowIK.R rot_z 3 +0.0 1.0 2 0.0 -8.666666984558105 0.0 10.666666984558105 +0.0 30.0 2 0.0 20.333332061767578 0.0 40.0 +0.0 60.0 2 0.0 50.0 0.0 70.0 +drivers: 0 +} diff --git a/samples/textSample/textures/back.jpg b/samples/textures/back.jpg similarity index 100% rename from samples/textSample/textures/back.jpg rename to samples/textures/back.jpg diff --git a/samples/textSample/textures/bottom.jpg b/samples/textures/bottom.jpg similarity index 100% rename from samples/textSample/textures/bottom.jpg rename to samples/textures/bottom.jpg diff --git a/samples/textSample/textures/bricks.jpg b/samples/textures/bricks.jpg similarity index 100% rename from samples/textSample/textures/bricks.jpg rename to samples/textures/bricks.jpg diff --git a/samples/textSample/textures/bricksNormal.jpg b/samples/textures/bricksNormal.jpg similarity index 100% rename from samples/textSample/textures/bricksNormal.jpg rename to samples/textures/bricksNormal.jpg diff --git a/samples/textSample/textures/defaultTexture.jpg b/samples/textures/defaultTexture.jpg similarity index 100% rename from samples/textSample/textures/defaultTexture.jpg rename to samples/textures/defaultTexture.jpg diff --git a/samples/textSample/textures/front.jpg b/samples/textures/front.jpg similarity index 100% rename from samples/textSample/textures/front.jpg rename to samples/textures/front.jpg diff --git a/samples/textSample/textures/left.jpg b/samples/textures/left.jpg similarity index 100% rename from samples/textSample/textures/left.jpg rename to samples/textures/left.jpg diff --git a/samples/textSample/textures/right.jpg b/samples/textures/right.jpg similarity index 100% rename from samples/textSample/textures/right.jpg rename to samples/textures/right.jpg diff --git a/samples/textSample/textures/top.jpg b/samples/textures/top.jpg similarity index 100% rename from samples/textSample/textures/top.jpg rename to samples/textures/top.jpg diff --git a/samples/textSample/textures/woodChips.jpg b/samples/textures/woodChips.jpg similarity index 100% rename from samples/textSample/textures/woodChips.jpg rename to samples/textures/woodChips.jpg diff --git a/skeletalAnimationSample.cpp b/skeletalAnimationSample.cpp new file mode 100644 index 0000000..5a74a11 --- /dev/null +++ b/skeletalAnimationSample.cpp @@ -0,0 +1,62 @@ +#include "root.h" +#include "model.h" +#include "material.h" +#include "mesh.h" +#include "skeleton.h" +#include "animationController.h" +#include "animationChannel.h" + +using namespace std; +using namespace vb01; + +int main(){ + const string PATH = "../", TEX_PATH = PATH + "samples/textures/", MODEL_PATH = PATH + "samples/models/"; + string skyboxTextures[] = { + TEX_PATH + "top.jpg", + TEX_PATH + "bottom.jpg", + TEX_PATH + "left.jpg", + TEX_PATH + "right.jpg", + TEX_PATH + "front.jpg", + TEX_PATH + "back.jpg" + }; + + Root *root = Root::getSingleton(); + root->start(800, 600, PATH, "Skeletal animation sample"); + root->createSkybox(skyboxTextures); + Node *rootNode = root->getRootNode(); + + Camera *cam = root->getCamera(); + cam->setPosition(Vector3(0, 0, 1) * 20); + cam->lookAt(Vector3(0, 0, -1).norm(), Vector3(0, 1, 0).norm()); + + Model *model = new Model(MODEL_PATH + "kek.vb"); + Material *mat = new Material(); + mat->setLightingEnabled(false); + mat->setTexturingEnabled(true); + string images[] = {TEX_PATH + "defaultTexture.jpg"}; + Texture *texture = new Texture(images, 1); + mat->addDiffuseMap(texture); + model->setMaterial(mat); + rootNode->attachChild(model); + + int numChildren = model->getNumChildren(); + Node *node = model->getChild(1); + Mesh *mesh = node->getMesh(0); + Skeleton *skeleton = mesh->getSkeleton(); + + AnimationController *controller = skeleton->getAnimationController(); + AnimationChannel *channel = new AnimationChannel(controller); + channel->addAnimatable(skeleton->getBone("handIK.R")); + channel->addAnimatable(skeleton->getBone("elbowIK.R")); + channel->setAnimationName("righArmAnim"); + channel->setLoop(true); + controller->addAnimationChannel(channel); + + skeleton->getBone("handIK.L")->setPosePos(Vector3(1.5, -1.5, 0)); + + while(true){ + root->update(); + } + + return 0; +} diff --git a/stb_image.h b/stb_image.h deleted file mode 100755 index 005a852..0000000 --- a/stb_image.h +++ /dev/null @@ -1,7537 +0,0 @@ -/* stb_image - v2.23 - 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.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 - John-Mark Allen - Carmelo J Fdez-Aguera - Bug & warning fixes - Marc LeBlanc David Woo Guillaume George Martins Mozeiko - Christpher Lloyd Jerry Jansson Joseph Thomson 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 - Laurent Gomila Cort Stratton Sergio Gonzalez github:snagar - Aruelien Pocheville Thibault Reuille Cass Everitt github:Zelex - Ryamond Barbiero Paul Du Bois Engin Manap github:grim210 - Aldo Culquicondor Philipp Wiesemann Dale Weiler github:sammyhw - Oriol Ferrer Mesia Josh Tobin Matthew Gregan github:phprus - Julian Raschke Gregory Mullen Baldur Karlsson github:poppolopoppo - Christian Floisand Kevin Schmidt JR Smith github:darealshinji - Blazej Dariusz Roszkowski github:Michaelangel007 -*/ - -#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. -// -// =========================================================================== -// -// 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: -// -// By default we convert iphone-formatted PNGs back to RGB, even though -// they are internally encoded differently. You can disable this conversion -// by calling stbi_convert_iphone_png_to_rgb(0), in which case -// you will always just get the native iphone "format" through (which -// is BGR stored in RGB). -// -// 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 -// - - -#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 -// NOT 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); - -// 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 - - -#ifdef _MSC_VER -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) >> (32 - (y)))) -#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 -// assume GCC or Clang on ARM targets -#define STBI_SIMD_ALIGN(type, name) type name __attribute__((aligned(16))) -#endif - -#ifndef STBI_SIMD_ALIGN -#define STBI_SIMD_ALIGN(type, name) type name -#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]; - - 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->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->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) -{ - fseek((FILE*) user, n, SEEK_CUR); -} - -static int stbi__stdio_eof(void *user) -{ - return feof((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); -#endif - -// this is not threadsafe -static const char *stbi__g_failure_reason; - -STBIDEF const char *stbi_failure_reason(void) -{ - return stbi__g_failure_reason; -} - -static int stbi__err(const char *str) -{ - stbi__g_failure_reason = str; - return 0; -} - -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; -} - -// 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); -} - -// 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) -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 - -// 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); -} - -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) -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 - -// 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 = 0; - -STBIDEF void stbi_set_flip_vertically_on_load(int flag_true_if_should_flip) -{ - stbi__vertically_flip_on_load = flag_true_if_should_flip; -} - -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; - - #ifndef STBI_NO_JPEG - if (stbi__jpeg_test(s)) return stbi__jpeg_load(s,x,y,comp,req_comp, ri); - #endif - #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); - #endif - #ifndef STBI_NO_PIC - if (stbi__pic_test(s)) return stbi__pic_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; - - if (ri.bits_per_channel != 8) { - STBI_ASSERT(ri.bits_per_channel == 16); - 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; - - if (ri.bits_per_channel != 16) { - STBI_ASSERT(ri.bits_per_channel == 8); - 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(_MSC_VER) && 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(_MSC_VER) && 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(_MSC_VER) && defined(STBI_WINDOWS_UTF8) - wchar_t wMode[64]; - wchar_t wFilename[1024]; - if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, filename, -1, wFilename, sizeof(wFilename))) - return 0; - - if (0 == MultiByteToWideChar(65001 /* UTF8 */, 0, mode, -1, wMode, sizeof(wMode))) - return 0; - -#if _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); - 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; -} - -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; -} - -static void stbi__skip(stbi__context *s, int n) -{ - 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; -} - -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; -} - -static int stbi__get16be(stbi__context *s) -{ - int z = stbi__get8(s); - return (z << 8) + stbi__get8(s); -} - -static stbi__uint32 stbi__get32be(stbi__context *s) -{ - stbi__uint32 z = stbi__get16be(s); - return (z << 16) + stbi__get16be(s); -} - -#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); - return z + (stbi__get16le(s) << 16); -} -#endif - -#define STBI__BYTECAST(x) ((stbi_uc) ((x) & 255)) // truncate int to byte without warnings - - -////////////////////////////////////////////////////////////////////////////// -// -// 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); -} - -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); - } - #undef STBI__CASE - } - - STBI_FREE(data); - return good; -} - -static stbi__uint16 stbi__compute_y_16(int r, int g, int b) -{ - return (stbi__uint16) (((r*77) + (g*150) + (29*b)) >> 8); -} - -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); - } - #undef STBI__CASE - } - - STBI_FREE(data); - return good; -} - -#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); - 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]; - 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); - - sgn = (stbi__int32)j->code_buffer >> 31; // sign bit is always in MSB - k = stbi_lrot(j->code_buffer, n); - STBI_ASSERT(n >= 0 && n < (int) (sizeof(stbi__bmask)/sizeof(*stbi__bmask))); - j->code_buffer = k & ~stbi__bmask[n]; - k &= stbi__bmask[n]; - j->code_bits -= n; - return k + (stbi__jbias[n] & ~sgn); -} - -// 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); - 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); - 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) 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; - dc = j->img_comp[b].dc_pred + diff; - j->img_comp[b].dc_pred = dc; - 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 - 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); - diff = t ? stbi__extend_receive(j, t) : 0; - - dc = j->img_comp[b].dc_pred + diff; - j->img_comp[b].dc_pred = dc; - data[0] = (short) (dc << 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 - j->code_buffer <<= s; - j->code_bits -= s; - zig = stbi__jpeg_dezigzag[k++]; - data[zig] = (short) ((r >> 8) << 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) << 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]; - } - 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 - 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; - } - - // 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; -} - -// 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 ) { - // handle 0s at the end of image data from IP Kamera 9060 - while (!stbi__at_eof(j->s)) { - int x = stbi__get8(j->s); - if (x == 255) { - j->marker = stbi__get8(j->s); - break; - } - } - // if we reach eof without hitting a marker, stbi__get_marker() below will fail and we'll eventually return 0 - } - } 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"); - } else { - if (!stbi__process_marker(j, m)) return 0; - } - 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; - - // 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)); - 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)); - 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))); - 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) - -// 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[288]; - stbi__uint16 value[288]; -} 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; - 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 stbi_uc stbi__zget8(stbi__zbuf *z) -{ - if (z->zbuffer >= z->zbuffer_end) return 0; - return *z->zbuffer++; -} - -static void stbi__fill_bits(stbi__zbuf *z) -{ - do { - STBI_ASSERT(z->code_buffer < (1U << z->num_bits)); - 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]; - STBI_ASSERT(z->size[b] == s); - 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) 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; - int cur, limit, old_limit; - z->zout = zout; - if (!z->z_expandable) return stbi__err("output buffer limit","Corrupt PNG"); - cur = (int) (z->zout - z->zout_start); - limit = old_limit = (int) (z->zout_end - z->zout_start); - while (cur + n > limit) - 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; - return 1; - } - 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) return stbi__err("bad huffman code","Corrupt PNG"); - 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 (zout + len > a->zout_end) { - 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 { - STBI_ASSERT(c == 18); - c = stbi__zreceive(a,7)+11; - } - 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; - } - STBI_ASSERT(a->num_bits == 0); - // 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 ((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[288] = -{ - 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; - 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 , 288)) 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 filters used for first scanline to avoid needing a dummy row of 0s - STBI__F_avg_first, - STBI__F_paeth_first -}; - -static stbi_uc first_row_filter[5] = -{ - STBI__F_none, - STBI__F_sub, - STBI__F_none, - STBI__F_avg_first, - STBI__F_paeth_first -}; - -static int stbi__paeth(int a, int b, int c) -{ - int p = a + b - c; - int pa = abs(p-a); - int pb = abs(p-b); - int pc = abs(p-c); - if (pa <= pb && pa <= pc) return a; - if (pb <= pc) return b; - return c; -} - -static const stbi_uc stbi__depth_scale_table[9] = { 0, 0xff, 0x55, 0, 0x11, 0,0,0, 0x01 }; - -// 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; - 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"); - - 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); - 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"); - - for (j=0; j < y; ++j) { - stbi_uc *cur = a->out + stride*j; - stbi_uc *prior; - int filter = *raw++; - - if (filter > 4) - return stbi__err("invalid filter","Corrupt PNG"); - - if (depth < 8) { - STBI_ASSERT(img_width_bytes <= x); - cur += x*out_n - img_width_bytes; // store output to the rightmost img_len bytes, so we can decode in place - filter_bytes = 1; - width = img_width_bytes; - } - prior = cur - stride; // bugfix: need to compute this after 'cur +=' computation above - - // if first row, use special filter that doesn't sample previous row - if (j == 0) filter = first_row_filter[filter]; - - // handle first byte explicitly - for (k=0; k < filter_bytes; ++k) { - switch (filter) { - case STBI__F_none : cur[k] = raw[k]; break; - case STBI__F_sub : cur[k] = raw[k]; break; - case STBI__F_up : cur[k] = STBI__BYTECAST(raw[k] + prior[k]); break; - case STBI__F_avg : cur[k] = STBI__BYTECAST(raw[k] + (prior[k]>>1)); break; - case STBI__F_paeth : cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(0,prior[k],0)); break; - case STBI__F_avg_first : cur[k] = raw[k]; break; - case STBI__F_paeth_first: cur[k] = raw[k]; break; - } - } - - if (depth == 8) { - if (img_n != out_n) - cur[img_n] = 255; // first pixel - raw += img_n; - cur += out_n; - prior += out_n; - } else if (depth == 16) { - if (img_n != out_n) { - cur[filter_bytes] = 255; // first pixel top byte - cur[filter_bytes+1] = 255; // first pixel bottom byte - } - raw += filter_bytes; - cur += output_bytes; - prior += output_bytes; - } else { - raw += 1; - cur += 1; - prior += 1; - } - - // this is a little gross, so that we don't switch per-pixel or per-component - if (depth < 8 || img_n == out_n) { - int nk = (width - 1)*filter_bytes; - #define STBI__CASE(f) \ - case f: \ - for (k=0; k < nk; ++k) - switch (filter) { - // "none" filter turns into a memcpy here; make that explicit. - case STBI__F_none: memcpy(cur, raw, nk); break; - STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k-filter_bytes]); } break; - STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; - STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k-filter_bytes])>>1)); } break; - STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],prior[k],prior[k-filter_bytes])); } break; - STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k-filter_bytes] >> 1)); } break; - STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k-filter_bytes],0,0)); } break; - } - #undef STBI__CASE - raw += nk; - } else { - STBI_ASSERT(img_n+1 == out_n); - #define STBI__CASE(f) \ - case f: \ - for (i=x-1; i >= 1; --i, cur[filter_bytes]=255,raw+=filter_bytes,cur+=output_bytes,prior+=output_bytes) \ - for (k=0; k < filter_bytes; ++k) - switch (filter) { - STBI__CASE(STBI__F_none) { cur[k] = raw[k]; } break; - STBI__CASE(STBI__F_sub) { cur[k] = STBI__BYTECAST(raw[k] + cur[k- output_bytes]); } break; - STBI__CASE(STBI__F_up) { cur[k] = STBI__BYTECAST(raw[k] + prior[k]); } break; - STBI__CASE(STBI__F_avg) { cur[k] = STBI__BYTECAST(raw[k] + ((prior[k] + cur[k- output_bytes])>>1)); } break; - STBI__CASE(STBI__F_paeth) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],prior[k],prior[k- output_bytes])); } break; - STBI__CASE(STBI__F_avg_first) { cur[k] = STBI__BYTECAST(raw[k] + (cur[k- output_bytes] >> 1)); } break; - STBI__CASE(STBI__F_paeth_first) { cur[k] = STBI__BYTECAST(raw[k] + stbi__paeth(cur[k- output_bytes],0,0)); } break; - } - #undef STBI__CASE - - // the loop above sets the high byte of the pixels' alpha, but for - // 16 bit png files we also need the low byte set. we'll do that here. - if (depth == 16) { - cur = a->out + stride*j; // start at the beginning of the row again - for (i=0; i < x; ++i,cur+=output_bytes) { - cur[filter_bytes+1] = 255; - } - } - } - } - - // we make a separate pass to expand bits to pixels; for performance, - // this could run two scanlines behind the above code, so it won't - // intefere with filtering but will still be in the cache. - if (depth < 8) { - for (j=0; j < y; ++j) { - stbi_uc *cur = a->out + stride*j; - stbi_uc *in = a->out + stride*j + x*out_n - img_width_bytes; - // unpack 1/2/4-bit into a 8-bit buffer. allows us to keep the common 8-bit path optimal at minimal cost for 1/2/4-bit - // png guarante byte alignment, if width is not multiple of 8/4/2 we'll decode dummy trailing data that will be skipped in the later loop - stbi_uc scale = (color == 0) ? stbi__depth_scale_table[depth] : 1; // scale grayscale values to 0..255 range - - // note that the final byte might overshoot and write more data than desired. - // we can allocate enough data that this never writes out of memory, but it - // could also overwrite the next scanline. can it overwrite non-empty data - // on the next scanline? yes, consider 1-pixel-wide scanlines with 1-bit-per-pixel. - // so we need to explicitly clamp the final ones - - if (depth == 4) { - for (k=x*img_n; k >= 2; k-=2, ++in) { - *cur++ = scale * ((*in >> 4) ); - *cur++ = scale * ((*in ) & 0x0f); - } - if (k > 0) *cur++ = scale * ((*in >> 4) ); - } else if (depth == 2) { - for (k=x*img_n; k >= 4; k-=4, ++in) { - *cur++ = scale * ((*in >> 6) ); - *cur++ = scale * ((*in >> 4) & 0x03); - *cur++ = scale * ((*in >> 2) & 0x03); - *cur++ = scale * ((*in ) & 0x03); - } - if (k > 0) *cur++ = scale * ((*in >> 6) ); - if (k > 1) *cur++ = scale * ((*in >> 4) & 0x03); - if (k > 2) *cur++ = scale * ((*in >> 2) & 0x03); - } else if (depth == 1) { - for (k=x*img_n; k >= 8; k-=8, ++in) { - *cur++ = scale * ((*in >> 7) ); - *cur++ = scale * ((*in >> 6) & 0x01); - *cur++ = scale * ((*in >> 5) & 0x01); - *cur++ = scale * ((*in >> 4) & 0x01); - *cur++ = scale * ((*in >> 3) & 0x01); - *cur++ = scale * ((*in >> 2) & 0x01); - *cur++ = scale * ((*in >> 1) & 0x01); - *cur++ = scale * ((*in ) & 0x01); - } - if (k > 0) *cur++ = scale * ((*in >> 7) ); - if (k > 1) *cur++ = scale * ((*in >> 6) & 0x01); - if (k > 2) *cur++ = scale * ((*in >> 5) & 0x01); - if (k > 3) *cur++ = scale * ((*in >> 4) & 0x01); - if (k > 4) *cur++ = scale * ((*in >> 3) & 0x01); - if (k > 5) *cur++ = scale * ((*in >> 2) & 0x01); - if (k > 6) *cur++ = scale * ((*in >> 1) & 0x01); - } - if (img_n != out_n) { - int q; - // insert alpha = 255 - cur = a->out + stride*j; - if (img_n == 1) { - for (q=x-1; q >= 0; --q) { - cur[q*2+1] = 255; - cur[q*2+0] = cur[q]; - } - } else { - STBI_ASSERT(img_n == 3); - for (q=x-1; q >= 0; --q) { - cur[q*4+3] = 255; - cur[q*4+2] = cur[q*3+2]; - cur[q*4+1] = cur[q*3+1]; - cur[q*4+0] = cur[q*3+0]; - } - } - } - } - } else if (depth == 16) { - // force the image data from big-endian to platform-native. - // this is done in a separate pass due to the decoding relying - // on the data being untouched, but could probably be done - // per-line during decode if care is taken. - stbi_uc *cur = a->out; - stbi__uint16 *cur16 = (stbi__uint16*)cur; - - for(i=0; i < x*y*out_n; ++i,cur16++,cur+=2) { - *cur16 = (cur[0] << 8) | cur[1]; - } - } - - 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); - 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 = 0; -static int stbi__de_iphone_flag = 0; - -STBIDEF void stbi_set_unpremultiply_on_load(int flag_true_if_should_unpremultiply) -{ - stbi__unpremultiply_on_load = flag_true_if_should_unpremultiply; -} - -STBIDEF void stbi_convert_iphone_png_to_rgb(int flag_true_if_should_convert) -{ - stbi__de_iphone_flag = flag_true_if_should_convert; -} - -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); if (s->img_x > (1 << 24)) return stbi__err("too large","Very large image (corrupt?)"); - s->img_y = stbi__get32be(s); if (s->img_y > (1 << 24)) 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"); - if (scan == STBI__SCAN_header) return 1; - } 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"); - // if 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; - if (z->depth == 16) { - for (k = 0; k < s->img_n; ++k) tc16[k] = (stbi__uint16)stbi__get16be(s); // copy the values as-is - } else { - for (k = 0; k < s->img_n; ++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) { s->img_n = pal_img_n; return 1; } - 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; - 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 - ri->bits_per_channel = p->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 >= 0 && 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; -} stbi__bmp_data; - -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; - - 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"); - 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) { - 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 { - info->mr = 31u << 10; - info->mg = 31u << 5; - info->mb = 31u << 0; - } - } else if (compress == 3) { - info->mr = stbi__get32le(s); - info->mg = stbi__get32le(s); - info->mb = stbi__get32le(s); - // 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 { - 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); - 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); - - 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 - 14 - 24) / 3; - } else { - if (info.bpp < 16) - psize = (info.offset - 14 - info.hsz) >> 2; - } - - 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 - 14 - 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 - 14 - 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); - } - 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 - - // 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) - { - // 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); - - // 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 (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); - 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 (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 (!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 dispoase 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(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; - 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) { - out = (stbi_uc*) STBI_REALLOC( out, layers * stride ); - if (delays) { - *delays = (int*) STBI_REALLOC( *delays, sizeof(int) * layers ); - } - } else { - out = (stbi_uc*)stbi__malloc( layers * stride ); - if (delays) { - *delays = (int*) stbi__malloc( 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); - - *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 > 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 > 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); - stbi__rewind( s ); - if (p == NULL) - 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; - } - (void) stbi__get32be(s); - (void) 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) -// Does not support 16-bit-per-channel - -#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); - - if (!stbi__pnm_info(s, (int *)&s->img_x, (int *)&s->img_y, (int *)&s->img_n)) - return 0; - - *x = s->img_x; - *y = s->img_y; - if (comp) *comp = s->img_n; - - if (!stbi__mad3sizes_valid(s->img_n, s->img_x, s->img_y, 0)) - return stbi__errpuc("too large", "PNM too large"); - - out = (stbi_uc *) stbi__malloc_mad3(s->img_n, s->img_x, s->img_y, 0); - if (!out) return stbi__errpuc("outofmem", "Out of memory"); - stbi__getn(s, out, s->img_n * s->img_x * s->img_y); - - if (req_comp && req_comp != s->img_n) { - 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); - } - - 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 - stbi__pnm_skip_whitespace(s, &c); - - *y = stbi__pnm_getinteger(s, &c); // read height - stbi__pnm_skip_whitespace(s, &c); - - maxv = stbi__pnm_getinteger(s, &c); // read max value - - if (maxv > 255) - return stbi__err("max value > 255", "PPM image not 8-bit"); - else - return 1; -} -#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 - - 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. ------------------------------------------------------------------------------- -*/ diff --git a/textSample.cpp b/textSample.cpp index ad0d5c7..f15524c 100644 --- a/textSample.cpp +++ b/textSample.cpp @@ -13,8 +13,8 @@ using namespace vb01; int main(){ Root *root = Root::getSingleton(); Node *guiNode = root->getGuiNode(); - const string PATH = "../", FONT_PATH = PATH + "samples/textSample/fonts/", TEX_PATH = PATH + "samples/textSample/textures/"; - root->start(800, 600, PATH, "TextSample"); + const string PATH = "../", FONT_PATH = PATH + "samples/textSample/fonts/", TEX_PATH = PATH + "samples/textures/"; + root->start(800, 600, PATH, "Text sample"); int numTexts = 4; wstring texts[] = { @@ -61,11 +61,7 @@ int main(){ KeyframeChannel kcA; kcA.animatable = texture; kcA.type = KeyframeChannel::TEXTURE_FRAME_A; - Keyframe k0; - k0.interpolation = Keyframe::CONSTANT; - k0.value = 0; - k0.frame = 1; - kcA.keyframes = vector({k0}); + kcA.keyframes = vector({KeyframeChannel::createKeyframe(Keyframe::CONSTANT, 0, 1)}); KeyframeChannel kcB; kcB.animatable = texture; diff --git a/woodChips.jpg b/woodChips.jpg deleted file mode 100755 index 74c2d86..0000000 Binary files a/woodChips.jpg and /dev/null differ